繁体   English   中英

如何修复 react-dates SingleDatePicker 无效日期?

[英]How to fix react-dates SingleDatePicker invalid date?

我正在尝试使用 SingleDatePicker 在数据库中编辑/添加事件。 我可以在这个日历年之外创建一个新事件,但是当我去编辑 2019 年以后的任何事件时,我在我的 SingleDatePicker 中收到一个“无效日期”,单击它时我的网站崩溃并给出错误“Uncaught TypeError: month must成为一个有效的矩对象”。 我正在使用 momentjs。 值得注意的是,所有日期都是从我的 API 以完全相同的格式传递的,我只有 2019 年之后的日期才有这个问题。当日期在 2019 年之后时,我收到错误“警告:失败的道具类型:无效的道具date提供给SingleDatePicker的类型object ,预期为Moment 。“不过我正在使用 moment,所以我不明白这个错误。

我没有找到有关此问题的文档。

`componentWillReceiveProps() {
if (this.props.date !== null) {
  let newDate = moment(this.props.date, "ddd, MMM DD yyyy HH:mm:ss 
Z");
  this.setState({ date: newDate });
}
....

....
....
....

<SingleDatePicker
                date={this.state.date} 
                isOutsideRange={() => false}
                onDateChange={date => this.setState({ date })} /
                focused={this.state.focused} 
                onFocusChange={({ focused }) => this.setState({ 
                focused })} 
                id="selectedDate" ,
              />`

我做了一个为我解决的解决方法。 当日期为空时(就像我们的例子一样),您可以将它设置为今天的日期,如下所示:

onDateChange={date => this.setState({ date || moment().format('YYYY-MM-DD') })}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM