格式的弃用警告 - 但我指定格式

时间:2018-01-26 21:05:35

标签: javascript momentjs

使用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);
}

在哪里抱怨我没有指定格式?

1 个答案:

答案 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