Реагировать на Datepicker. Как сэкономить время в состоянии? - PullRequest
4 голосов
/ 06 ноября 2019

В настоящее время я создаю мини-проект для изучения React. Я использую React Datepicker для своей страницы бронирования. Сохранить выбранную дату в состоянии легко:

state = {
            startDate: new Date(),
            time: null 
} 
handleChange = (date) => {
    this.setState( {startDate: date} )         
}
<DatePicker
        selected={this.state.startDate}
        locale="ru"
        onChange={this.handleChange}
        minTime={setHours(setMinutes(new Date(), 0), 9)}
        maxTime={setHours(setMinutes(new Date(), 0), 22)}
        showTimeSelect
        timeIntervals={60}
        inline
/>

Но я также не понимаю, как сэкономить время в состоянии. Если пользователь не выбирает время, текущее время будет сохранено, но это не то, что я хочу. Мне нужно иметь «время» в качестве требования и правильно сохранить его в состоянии.

Буду признателен за любую помощь!

Ответы [ 2 ]

1 голос
/ 06 ноября 2019

установите ваше состояние как показано ниже

  state={
        startDate:new Date()
        }

        return (
        <DatePicker
      selected={startDate}
      onChange={date => setStartDate(date)}
      timeInputLabel="Time:"
      dateFormat="MM/dd/yyyy h:mm aa"
      showTimeInput
    />
      );
0 голосов
/ 06 ноября 2019

Ну, в конце концов мне пришлось добавить свой собственный компонент времени и использовать его.

...