我使用以下代码将服务器端日期时间转换为使用Moment.js的本地时间。

 moment(moment('Wed, 23 Apr 2014 09:54:51 +0000').format('lll')).fromNow()

但是我得到了:

弃用警告:时刻构造回退到 js Date。https://github.com/moment/moment/issues/1407有关更多信息。

看来我无法摆脱它!我该如何修复?

答案

要摆脱警告,您都需要:

  • 传递日期字符串的ISO格式版本:

    moment('2014-04-23T09:54:51');

  • 传递您现在拥有的字符串,但请告诉片刻字符串的格式:

    moment('Wed, 23 Apr 2014 09:54:51 +0000', 'ddd, DD MMM YYYY HH:mm:ss ZZ');

  • 将字符串转换为JavaScript日期对象,然后将其传递到时刻:

    moment(new Date('Wed, 23 Apr 2014 09:54:51 +0000'));

最后的选择是内置的后备,现在暂时支持的时刻,并带有弃用的控制台警告。他们说,他们不会在将来的发行中支持这次后备。他们解释说使用new Date('my date')太不可预测了。

来自: stackoverflow.com