时间戳在 AngularJS' 插值内转换为错误的日期

Timestamp is converted to wrong date inside AngularJS' interpolation

有了这个时间戳:1519347000,我想像这样在插值中将它转换成日期格式:

{{$ctrl.myTimestamp | date:'MMM d y, hh:mm'}}

结果值为1970年1月18日,04:02,这显然是错误的,正确的应该是2018年2月23日12:50

Plunker here.

知道出了什么问题吗?

您目前还有 Unix epoch 秒。

angular 中的日期过滤器需要毫秒。如果您将时间戳乘以一千,您将得到直到 Unix Epoch 的毫秒数。

最简单的修复方法如下:

{{($ctrl.myTimestamp * 1000) | date:'MMM d y, hh:mm'}}

您需要将传递的值乘以 1000 才能得到正确的日期