我有一个返回json的服务,如下所示:
"Results":[{"Id":"1","SomeDate":"2/19/2013 10:34:04 PM"}
当我尝试使用绑定格式化时,它不起作用 – 它只显示上面的字符串:
{{values.SomeDate| date:'mediumTime' }}
但是,如果我只传递这种格式,它可以工作:
{{ '1997-03-01T00:00:00+01:00' | date:'mediumTime'}}
正如charlietfl的评论中所提到的,一个干净的选择是更新服务以返回已经与内置角度过滤器兼容的日期格式.
但是,如果无法做到这一点,您可以设置自定义过滤器来解析日期.
我推荐的(非常小的)库是Moment.js:
http://momentjs.com/
以下是关于如何在自定义角度过滤器中包装Moment.js的示例博客文章:
http://www.34m0.com/2012/07/angularjs-user-friendly-date-display.html
angular.module('myModule'). filter('fromNow',function() { return function(dateString) { return moment(new Date(dateString)).fromNow() }; });
这将使用如下:
{{ reply.createdDate | fromNow }}