2

我有一个以下格式的 javascript 字符串:

2016-06-22T14:47:29.689358

我将如何使用ng-moment将字符串解析为时刻对象,然后在我的视图中对其进行格式化?

https://github.com/urish/angular-moment

伪代码:

$scope.time = "2016-06-22T14:47:29.689358";
<span am-time-ago="time | amParse:'YYYY.MM.DD HH:mm:ss'"></span>

似乎 time 需要在传递给 Date 对象之前转换为ng-moment.

4

3 回答 3

1

查看您可以使用的文档

amFromUnix 过滤器:将 unix 时间戳(自 1970 年 1 月 1 日以来的秒数)转换为时刻对象。例子:

<span am-time-ago="message.unixTime | amFromUnix">

要从您的日期字符串中获取 unixTime,只需执行以下操作:

var unixTime  = new Date("2016-06-22T14:47:29.689358").getTime();
于 2016-06-22T18:45:25.430 回答
1

看起来它只是想要一个瞬间的对象。

$scope.time = moment("2016-06-22T14:47:29.689358");
于 2016-06-22T18:58:40.463 回答
1

您根本不需要日期,实际上您不应该使用日期对象的解析器,因为它的行为方式很奇怪。您只是为您拥有的日期指定了错误的格式。

<span am-time-ago="time | amParse:'YYYY-MM-DDTHH:mm:ss.SSS'"></span>

这应该就是你所需要的。

有关日期解析不可靠的原因的更多信息,您可以查看此问题

于 2016-06-22T19:07:22.573 回答