1

react-datepicker で奇妙な問題に直面しています。日付ピッカーを redux フォームと互換性があるようにしました。コードは次のとおりです。

<DatePicker
  customInput={<CustomDateInputNew {...props} />}
  onChange={date => {
    props.input.onChange(date ? formatValueToState(date) : "");
    if (props.onSelect) {
      props.onSelect(date);
    }
  }}
  dateFormat="DD/MM/YYYY"
  openToDate={props.openToDate}
  selected={
    props.input.value ? parseStateToValue(props.input.value) : undefined
  }
  filterDate={day => isDateUnavailable(day, props.availability)}
  locale={moment.locale("en-gb")} //sets monday first day of week
/>

filterDate 関数は、配列内に含まれる日付を有効にするように表示され、その実装は次のとおりです。

export const isDateUnavailable = (day, daysArray) => {
  if (!days) {
    return true;
  }
  return days.filter(item => moment(item).isSame(day)).length > 0;
};

ここで、days は ['2018-09-09'] の形式の配列です。この日付ピッカーは、この配列に含まれる日付を表示します。クリックしてから20秒または3秒後に日付ピッカーが表示されるという問題に直面しています。なぜこうなった?他に同じ問題または相対的な問題に直面している人はいますか? それはfilterDatesと何かですか?? ありがとう!

4

2 に答える 2