如何在Angular中控制日期过滤器的时区输出?

时间:2013-10-08 10:20:51

标签: angularjs

假设我有一个对象保存到$scope.person,如下所示:

{name:"John",birthday:1381227352421}

为了保持清洁和通用,服务器将所有日期/时间戳保留为时代的通用。

当我显示对象时,我希望能够

<span>{{ person.birthday | date }}</span>

上面的方法可以很好地呈现浏览器本地日期/时间,但我希望它是用户控制的,或者我可能有不同的对象,每个对象都需要不同的时间。

如何控制date过滤器,使其显示特定的时区?

编辑:根据要求,进一步解释。我希望能够做类似

的事情
<span>{{ person.birthday | date:'tz-'mytime }}</span>

然后我可以在用户选择“EDT”或“UTC”或“PST”等的情况下进行下拉。当它们执行时,1381227352421的日期将显示在适当的时区。

2 个答案:

答案 0 :(得分:0)

我要做的是实现自定义指令。正如您所说,您希望有一个选择框/下拉菜单,用户可以选择其最喜欢的时区。这是DOM操作,对吗? AngularJS中的DOM操作应始终在指令中完成。

看起来像这样的指令:

<timezonechooser data='birth'></timezonechooser>

这是一个简单的小提琴:http://jsfiddle.net/Bm2Mh/

答案 1 :(得分:0)

你看过angular-moment吗?