使用moment.js,我不断在浏览器控制台中收到格式警告:
弃用警告:提供的值不在公认的RFC2822或 ISO格式。时刻构造回落到js Date(),这不是 所有浏览器和版本都可靠。非RFC2822 / ISO日期 不鼓励格式,将在即将到来的专业中删除 发布。请参阅 http://momentjs.com/guides/#/warnings/js-date/了解更多信息。 参数:
但据我所知,我根据文档指定了格式:
const checkToday = (targetDate)=> {
return chartData
.filter(curve => moment(curve.date, "MM-DD-YYYY").isBefore(targetDate, 'day'));
};
if (chartData) {
// addd # days to today
const targetDate = moment().add(days, 'days').format('MM-DD-YYYY');
return checkToday(targetDate);
}
在哪里抱怨我没有指定格式?
答案 0 :(得分:2)
问题出在这一行:
.filter(curve => moment(curve.date, "MM-DD-YYYY").isBefore(targetDate, 'day'));
您正在将字符串传递给在此行中创建的.isBefore
:
const targetDate = moment().add(days, 'days').format('MM-DD-YYYY');
您为该字符串使用的格式" MM-DD-YYYY"是抱怨的那一刻。找到可接受的格式here