0

我在 Moment.js 中正确格式化日期时遇到问题。我正在使用格式为“LLL D,YYYY”的格式函数,因此它应该返回类似“2016 年 9 月 15 日”的内容。

相反,它以一种奇怪的格式返回日期,例如“2016 年 9 月 15 日 2016 年 12 月 15 日上午 12:00”。

这是我的代码,下面是调试信息。

moment.locale(picker.options.language);

console.log('picker.options.language:');
console.log(picker.options.language);

formatted = moment(picker.date).format(picker.format);

console.log('picker.date:');
console.log(picker.date);

console.log('picker.format:');
console.log(picker.format);

console.log('formatted:');
console.log(formatted);

以及上述代码的控制台输出:

调试输出

4

2 回答 2

5

这应该工作...

formatted = moment(picker.date).format('MMM D, YYYY')

参考: http: //momentjs.com/docs/#/parsing/string-format/

于 2016-09-15T17:42:15.053 回答
3

http://momentjs.com/docs/#/displaying/format/我们可以看到“LLL”代表格式“月名、月日、年、时间”。似乎您想要“月日,年”,即“LL”。

尝试:

picker.format = 'LL';
formatted = moment(picker.date).format(picker.format);
console.log(formatted);

输出(带有今天的日期):

September 15, 2016
于 2016-09-15T17:28:29.740 回答