Реагировать на отключение дат по дате выбора через две недели

Я использую модуль реагировать на мой сайт. Я хочу отключить даты через 2 недели. например, сегодня дата: 20-02-2019, поэтому я хочу отключить даты после 5 марта 2019 года.

Как я могу это сделать?

2 ответа

Вы можете указать дату 13 дней в будущем. maxDate двигательный

Пример ( CodeSandbox)

class App extends React.Component {
  state = {
    startDate: new Date()
  };

  handleChange = date => {
    this.setState({
      startDate: date
    });
  };

  render() {
    const twoWeeksFromNow = new Date();
    twoWeeksFromNow.setDate(twoWeeksFromNow.getDate() + 13);

    return (
      <DatePicker
        selected={this.state.startDate}
        onChange={this.handleChange}
        maxDate={twoWeeksFromNow}
      />
    );
  }
}

ReactDOM.render(<App />, document.getElementById("root"));

Вы можете добавить атрибут maxDate в свой код выбора даты.

   maxDate={addDays(new Date(), 13)}

Реагируют-Datepicker компонент, который вы используете, уже имеет includeDates параметр.

() => {
    const [startDate, setStartDate] = useState(null);
    return (
        <DatePicker
            selected={startDate}
            onChange={date => setStartDate(date)}
            includeDates={[new Date(), addDays(new Date(), 1)]}
            placeholderText="This only includes today and tomorrow"
        />
    );
};

Этот код выше показан только сегодня и завтра. Если вы хотите отображать даты за две недели, просто добавьте список дней в массив (строка 7).

Ссылка для этого конкретного раздела https://reactdatepicker.com/

Другие вопросы по тегам