5

我正在从我的 Angular 应用程序的 CDN 中提取 momentJS 库:

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment.min.js"></script>

默认语言环境应该是英语('en')。但由于某种原因,我的应用程序中的默认语言环境是“zh-tw”。我看到这曾经是一个问题(请参阅此处此处),但据说已修复。

即使我手动设置了全局语言环境,它也会被忽略:

在我的 index.html 文件中:

<script>
    moment.locale('en');
</script>

在我的 Angular 控制器中:

moment.locale('en');

现在唯一有效的是,如果我在每个时刻实例上设置语言环境:

var moment1 = moment(myDate);
moment1.locale('en');
var moment2 = moment(moment1).add(24, 'h');
moment2.locale('en');
4

2 回答 2

3

如果您使用的是 Angular,通常对我有用的是这个

.run(["moment", function(moment){
    moment.locale("en");
}]);
于 2015-05-19T22:22:27.393 回答
2

zh-tw我知道这个问题是去年发布的,但对于遇到格式问题的任何用户来说,以下几点值得注意。

今天我在使用格式方法时突然出现了这个问题。幸运的是,在过去的几天里,这个问题有了更永久的解决方案。

您遇到的问题最初是在 2013 年(大约)解决的,随后的更新已发布。无论出于何种原因,该问题在更新 2.10.3 之前/前后某个时间的更新中再次出现,此后一直是一个问题。然而,在 2016 年 1 月 2 日,他们发布了更新,随后解决了人们遇到的问题。更新为Moment 2.11.0将解析默认语言zh-tw并将其恢复为en默认语言。

虽然接受的答案是当时的修复,但我建议您更新到最新版本的 Moment,因为从我的角度来看,解决您的问题需要一些技巧,以及其他原因。

访问以下链接了解 Moment 2.11.0 中的所有更改,您会感兴趣的问题在ID #2735.

Moment 2.11.0 - 更新日志

于 2016-01-06T15:07:25.940 回答