在Moment.js中调用.calendar()
时,使用MM/DD/YYYY
格式输出日期。通过查看代码,这似乎由L
令牌控制。同样,LL
令牌将日期输出为 2013年11月29日。
唯一的问题是,这些是美国的日期格式,我需要根据澳大利亚标准展示我的日期格式,例如: DD/MM/YYYY
和 2013年11月29日。
有谁知道在哪里/如何设置这个?
注意:我的系统区域设置和位置分别设置为英语(澳大利亚)和澳大利亚。
答案 0 :(得分:11)
你必须使用moment-with-lang.js并设置“澳大利亚”的语言
检查此处的文档http://momentjs.com/docs/#/i18n/changing-locale/
对你来说应该是moment.lang('en-AU');
答案 1 :(得分:10)
使用moment-with-lang.js 代码
<script src="moment-with-langs.js"></script>
time = moment("Dec 25, 1995");
moment(time).calendar() // note the absence of moment.lang("en-AU");
输出
25/12/1995
相反,使用moment.lang("en-AU");
我们得到了
moment.lang("en-AU");
moment(time).calendar();
输出
25/12/1995
您也可以使用format()
moment(time).format("D MMMM YYYY")
输出
25 December 1995
答案 2 :(得分:8)
从版本 2.8.1及更新,使用locale
:
moment.locale('en-AU');
如果您使用的版本早于2.8.1 ,请使用lang
:
moment.lang('en-AU');
这将在moment
中全局设置区域设置,设置完成后,所有区域设置依赖项功能都会受到影响。
请注意,在1.7.0版之前无法使用此功能。
请参阅documentation。