Здравствуйте. Я использую реагирующее средство выбора даты, дата которого ограничена минимальным, максимальным значениями для времени. Все работает, как и ожидалось, с использованием новой даты ():
minTime={new Date().setHours(11)}
maxTime={new Date().setHours(22)}
Однако ошибка возникает, если я хочу использовать дату завтрашнего дня, созданную с помощью вспомогательной функции:
const tomorrow = () => {
const today = new Date()
const tomorrow = new Date()
tomorrow.setDate(today.getDate() + 1)
return tomorrow
}
С настройками, указанными ниже, невозможноизмените время.
<DatePicker
name="Datepicker"
className="table-booking__input"
selected={booking.date}
onChange={this.handleDate}
showTimeSelect
minDate={tomorrow()}
timeFormat="HH"
timeIntervals={60}
minTime={booking.date.setHours(11)}
maxTime={booking.date.setHours(22)}
dateFormat="MMMM dd, yyyy h aa"
timeCaption="Time"
placeholderText="Click and choose the date"
/>
Вот мое состояние и функция обработки:
this.state = {
booking: {
date: tomorrow(),
people: 1,
name: 'John Doe',
email: 'jdoe@gty.xx'
}
}
handleDate(e) {
const booking = { ...this.state.booking }
booking.date = e
this.setState({ booking })
}