我在我的Angular应用程序中从CDN中提取了momentJS库:
<script>
moment.locale('en');
</script>
默认语言环境应该是英语(&#39; en&#39;)。但由于某种原因,我的应用程序中的默认语言环境是&#39; zh-tw&#39;。我发现这曾经是一个问题(请参阅here和here),但它应该是固定的。
即使我手动设置全局区域设置,也会被忽略:
在我的index.html文件中:
moment.locale('en');
在我的Angular控制器中:
var moment1 = moment(myDate);
moment1.locale('en');
var moment2 = moment(moment1).add(24, 'h');
moment2.locale('en');
现在唯一可行的是,如果我在每个时刻实例上设置语言环境:
{{1}}
答案 0 :(得分:3)
如果您使用的是Angular,通常对我有用的是
.run(["moment", function(moment){
moment.locale("en");
}]);
答案 1 :(得分:2)
我知道这个问题是去年发布的,但对于遇到zh-tw
格式问题的用户来说,值得注意的是以下内容。
今天在使用格式化方法时出现了这个问题。幸运的是,在过去的几天里,这个问题有了更持久的解决方法。
您遇到的问题最初是在2013年(大约)解决的,后来的更新已经发布。无论出于何种原因,问题都会在更新2.10.3之前/之前的某个时间内发生,并且自此以后一直是个问题。然而,在2016年1月2日,他们发布了一个更新,随后解决了人们遇到的问题。更新至Moment 2.11.0
会将语言默认值解析为zh-tw
,并默认将其还原为en
。
虽然接受的答案是当时的修复,但我建议您从我的角度更新到最新版本的Moment,除了其他原因之外,还有一些解决问题的方法。
请访问以下链接,了解Moment 2.11.0中的所有更改,您感兴趣的问题位于ID #2735
下。