Заставьте react datepicker запускаться при нажатии на внешнюю часть календаря

#javascript #reactjs #bootstrap-datepicker #react-datepicker

Вопрос:

У меня есть средство выбора даты реакции, которое позволяет вам выбирать дату и время. В настоящее время существует выбор даты » От » и «До», в котором » От «не может быть после «До», а » До «не может быть до «От». Это работает для текущей даты, но не для времени. Если я установлю дату » До «как 9/3/2021 1:30 вечера, поле» От » позволит мне выбрать любую дату до этого времени, но если бы я установил дату, скажем, 8/31, время все равно было бы ограничено чем-либо до 1:30. Это, очевидно, неправильно, так как я должен быть в состоянии выбрать что-либо за 24 часа, если дата-время не превышает значение в поле «Кому».

Это одна из проблем. Следующее заключается в том, что, когда я нажимаю на дату в календаре, еще до того, как я определяю время, индикатор даты срабатывает и собирает данные в диапазоне дат. Я не хочу, чтобы это срабатывало до тех пор, пока не будут выбраны дата и время, так OnClose={do something} что я ожидаю именно этого.

Вот индикатор даты:

 <h6>From:</h6>
<DatePicker
    selected={startDate}
    onChange={onStartChange}
    shouldCloseOnSelect
    selectsStart
    startDate={startDate}
    endDate={endDate}
    maxDate={endDate}
    minTime={new Date(0, 0, 0, 0)}
    maxTime={endDate}
    showTimeSelect
/>
<h6>To:</h6>
<DatePicker
    selected={endDate}
    onChange={onEndChange}
    selectsEnd
    startDate={startDate}
    endDate={endDate}
    maxDate={now}
    minDate={startDate}
    minTime={startDate}
    maxTime={endDate}
    showTimeSelect
/>
 

Вот его реализация:

 <Col md="4">
    <DateRangePicker
        onStartChange={(date) => setStartDate(date)}
        onEndChange={(date) => setEndDate(date)}
        startDate={startDate}
        endDate={endDate}
    />
</Col>