React Datepicker-无效的时间值

时间:2019-07-18 15:51:47

标签: reactjs datepicker react-datepicker

我正在尝试创建一个React-datepicker;但是,我收到此错误:

  

RangeError:无效的时间值

我添加了 dateFormat 以匹配我的日期变量;但是,我仍然遇到相同的错误?

我在做什么错了?

import DatePicker from "react-datepicker";

let date = moment(dateString).format('MMMM d, YYYY h:mm a'); // January 3, 2019 12:30 pm

<DatePicker
    selected={date}
    onChange={this.handleInputChange}
    showTimeSelect
    timeFormat="HH:mm"
    timeIntervals={15}
    dateFormat="MMMM d, YYYY h:mm a"
    timeCaption="time"
/>

我也尝试过 dateFormat =“ MMMM d,yyyy h:mm aa”

2 个答案:

答案 0 :(得分:0)

DatePicker期望Date,而不是moment。您必须先将其转换:

let date = moment(dateString).toDate();

从DatePicker docs

  

直到1.8.0版之前,此软件包一直使用Moment.js。从v2.0.0开始,我们切换为使用本机Date对象以减小包的大小。如果您是从1.8.0切换到2.0.0或更高版本,请查看上面的更新示例,以查看示例网站以获取最新示例。

答案 1 :(得分:0)

就我而言,问题涉及从数据库中提取ISO格式的日期后检查日期是否为空。

 <DatePicker selected={initiated_Date ? new Date(initiated_Date) : null}