我有一个网站,根据位置的不同,允许用不同的语言设置日期:
例:
Mercredi, Juin 06, 2012 // french
Wednesday, Jun 06, 2012 // english
然后这些日期需要使用momentjs保存在服务器上
moment('Tuesday, Jun 05, 2012').format(); // 2012-06-05T00:00:00+02:00
moment('Mercredi, Juin 06, 2012').format(); // NaN-NaN-NaNTNaN:NaN:NaN+00:00
当用户使用与英语不同的语言时,如何解决此问题?
附言:
不确定它是否有帮助...
使用 momentsjs 可以通过这种方式设置 lang,但问题仍然存在:
moment.lang('fr');
moment('Mercredi, Juin 06, 2012').format(); // NaN-NaN-NaNTNaN:NaN:NaN+00:00
缺少两件事:
-
加载相应的语言文件。
-
引用文档:"您可以从可以通过 Date.parse 解析的字符串创建一个时刻"[moment(String)] 或"如果您知道输入字符串的格式,您可以使用它来解析时刻"[moment(String, String)]。因此,如果 Date.parse 无法理解它,则需要将日期格式作为第二个参数。
这应该有效,然后:
moment.lang("fr");
moment('Mercredi, Juin 06, 2012', "dddd, MMMM DD, YYYY").format();
另请参阅此 jsFiddle