我正在使用Material UIDateTimePicker
,我试图将最小日期设置为60分钟,从现在开始,无法找出正确的语法。我现在的生活方式行不通。我尝试使用minTime
代替,因为我在一个教程中看到,但这给了我一个警告:
React does not recognize the `minTime` prop on a DOM element
谁能告诉我把时间设置为60分钟的正确语法是什么?
MyDateTimePicker
:
<MuiPickersUtilsProvider utils={DateFnsUtils}>
<DateTimePicker
required={true}
id="select-due-date-time"
label="Due date"
name="dueDateTime"
disablePast
error={materialDateTimeInputError}
value={dueDateTime}
onChange={handleDateChange}
minDate={new Date().getMinutes + 60}
minDateMessage={"Due date must be at least 60 minutes from now"}
helperText="Please select the due date for your request"
/>
</MuiPickersUtilsProvider>
我也尝试过这样的东西,但它也没有工作minDate={new Date(new Date().getMinutes + 60)}
编辑:我尝试使用minDate={new Date(new Date().getTime() + 60*60*1000)}
,有人在评论中建议。不幸的是,这不起作用。甚至有可能设置控制minTime
的分钟吗?到目前为止,这个属性只对我有效了几天。
我有同样的问题,我可以确认minDate
只工作几天,而不是小时/分/秒。
下面是一个例子。
如果你在minDate
中这样写:
<DateTimePicker
value={this.state.date || Date.now()}
onChange={this.handleDateChange}
format="hh:mm DD.MM.YYYY"
autoOk
ampm={false}
minDate={new Date().setHours(new Date().getHours() + 1)}
/>
给出与
相同的结果:<DateTimePicker
value={this.state.date || Date.now()}
onChange={this.handleDateChange}
format="hh:mm DD.MM.YYYY"
autoOk
ampm={false}
minDate={new Date()}
/>
我尝试了多次(也通过使用moment
),但结果是相同的。一个可能的解决方法是验证onChange
事件中的日期,如果日期从现在起不到一小时,则显示错误(差,但这是我发现的唯一方法)。
材质界面现在支持minDateTime用date验证最小时间
Documentation - material -ui DateTimePicker