我想在模板上设置倒计时,所以我的 $scope 中有一个名为 time_counter 的计数器,它的值是一定的毫秒数,比如本例中的 5000 毫秒。
当我尝试在模板中将此数字显示为小时、分钟和秒数时,它告诉我 01h00m05s 而不是 00h00m05s。这是我如何进行的:
{{ 5000 | date:'HH:mm:ss' }}
这是一个已知的错误还是我的语法不好?
这是小提琴:日期过滤器问题
我使用 Angularjs 1.0.3
谢谢 !
日期过滤器(根据文档)假设给定日期的时区是相对于UTC的,如果没有给出,那么你得到的是与你给定毫秒的 UTC 相关的时间。如果您将其更改为像 'MM-dd-yyyy HH:mm:ss 这样的格式,您会以更明显的方式看到这种效果,因为它将相对于 1969 在测试版本上打印 '12-31-1969 17 :00:05' 对我来说。
要获得您正在寻找的结果,您需要为此创建一个自定义过滤器,这是一个时间计数器过滤器。您可以按照http://docs.angularjs.org/tutorial/step_09上的教程进行操作,这将引导您完成它的创建过程。