当前时区的弃用警告

时间:2018-05-03 07:26:51

标签: angularjs momentjs

var viewValue = "GMT"; 

return moment(moment().tz(viewValue).format('LLL'));

高于return以下错误,请您告诉我如何解决以下问题:

Deprecation warning: value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.

2 个答案:

答案 0 :(得分:0)

语句moment().tz('GMT').format('LLL')会生成如下字符串:

May 3, 2018 7:29 AM

上述字符串不是有效的ISO格式。这就是您收到此警告的原因,因为如果将其传递给moment构造函数,则会再次创建MomentJS对象。

要缓解,您需要指定字符串的格式以正确解析它:

moment(moment().tz('GMT').format('LLL'), 'MMM DD, YYYY HH:mm A');

答案 1 :(得分:0)

由于警告清楚地显示momentjs不支持代码中的返回值(日期格式)。此格式已弃用,将来也会被删除。

因此,解决方法是从以下链接中选择任何格式:

检查支持的ISO 8601字符串& RFC 2822日期时间格式此处http://momentjs.com/docs/#/parsing/string/