使用AngularMoment将GMT时间格式化为CET

时间:2014-06-16 22:51:35

标签: angularjs date datetime momentjs

我试图将GMT中的unix时间戳格式化为CET中的时间。

所以我的json文件中的日期是1404896400 - > 2014年7月9日星期三09:00:00 GMT。我想在我的应用程序中显示这个星期三,2014年7月9日09:00:00 CET(+2)。

没有希望浏览器补偿我的时区(CET),因此日期显示为11:00。我希望它在我的浏览器中显示为9.00。

我正在使用AngularMoment,这是Moment.js的Angular实现。

我试图从文档中弄清楚我是如何做到的,但是我已经陷入困境,无法让它发挥作用。

我已经尝试通过设置常量来设置我的时区:

.constant('angularMomentConfig', {
  preprocess: 'unix', // optional
  timezone: 'Europe/Amsterdam' // optional
})

然后在我的模板中使用amDateFormat过滤器:

{{symposium.content.first_talk.content.date_and_time | amDateFormat:'h:mm'}}

但时间显示为11:00。如何让它显示为9:00?

1 个答案:

答案 0 :(得分:1)

来自angular-moment readme

  

请记住在项目中加入moment-timezone.js,否则请加入   自定义时区功能将不可用。你也会   需要包含您可以使用的创建的时区数据文件   Timezone Data Builder ......

You can see an example jsfiddle here.我已加载时间数据格式Europe/Amsterdam内联,你可以看到它确实适应了CEST的UTC + 2。