response-datepicker дает неправильные значения

Я создаю приложение, и я использую реагировать-DatePicker, однако у меня странное поведение компонента. Выбранная дата показывает неправильный формат. Вот что я использую:

this.state={
   selectedDate: moment().format(),
}

а также

<DatePicker selected={this.state.selectedDate}/>

Проблема в том, что компонент показывает следующее значение:"52//02/2019/",

Кажется, что компонент считает, сколько дней прошло до текущей даты в году. Я также пытался moment().format('DD/MM/YYYY') без удачи любая помощь будет оценена. Спасибо

4 ответа

Решение

Хорошо, я публикую это как ответ, чтобы показать, что сработало для меня. Я считаю, что это слишком большой, чтобы быть комментарием.

Итак, я установил:

this.state={selectedDate:moment().format()}

и в компоненте я использовал:

<DatePicker selected={this.state.selectedDate} 
   dateFormat={moment(this.state.selectedDate).format('DD/MM/YYYY')}/>

Таким образом, я смог изменить выбранную дату и получить текущее значение даты вместо количества дней. Однако я до сих пор не уверен, насколько велико это решение. По крайней мере, у меня пока работает. Надеюсь, что это помогает другим.

Для меня это сработало, когда я использовал момент (). Формат ("ДД ММ ГГГГ") означает, что внутри не было никакого символа "/". Попробуйте код ниже:

    this.state = {
        startDate: moment().format('DD MM YYYY')
    };

Вы должны попытаться отформатировать так (2 эти форматы совпадают друг с другом):

value ={moment(this.state.startDay).format('DD/MM/YYYY')}
format="DD/MM/YYYY"

С версии 2.0.0 React-datepicker отказался от moment.js и начал использовать dateFns.

Что вам нужно сделать, так это удалить moment.js и предоставить собственный объект Date в качестве выбранной опоры и настраиваемую строку форматирования в качестве опоры fomat.

      () => {
  const [startDate, setStartDate] = useState(new Date());
  return (
    <DatePicker
      dateFormat="yyyy/MM/dd"
      selected={startDate}
      onChange={date => setStartDate(date)}
    />
  );
};
Другие вопросы по тегам