Gatsby中的日期选择器无效时间值错误

时间:2019-12-09 07:16:03

标签: javascript gatsby

这是我的代码:

  1. 设置日期
    this.state = {
        startDate: moment().format('YYYY-MM-DD')
    }
  1. 将此startDate设置为datepicker(react-datepicker):
    DatePicker
            selected={this.state.startDate}
            onChange={this.handleDateChange.bind(this)}
  1. 并给出错误:

enter image description here

1 个答案:

答案 0 :(得分:0)

好吧,在查看react-datepicker文档之后,我发现了一些有关此问题的有用信息。那就是“ 直到1.8.0版,此软件包一直使用Moment.js。从v2.0.0开始,我们切换到使用date-fns(它使用本机Date对象)来减小软件包的大小。react-datepicker在版本2之前,它使用moment作为日期类型,在版本2之后,它使用js date类型请检查此documentation link

要解决此问题,我们有2种方法,

  1. 我正在使用react-datepicker 2.5.0 +打字稿+ “ @ types / react-datepicker”:“ ^ 1.1.7” + momentjs。升级 “ @ types / react-datepicker”:“ ^ 2.3.0”。打字稿应该给你 错误。

(OR)

  1. 只需将日期更改为this.state = { startDate: moment().toDate().format('YYYY-MM-DD') },因为已选择 prop反应组件中的DatePicker需要一个日期 对象