我从Angular文档中注意到,日期过滤器应该可以正常使用ISO 8601日期,格式为yyyy-MM-ddTHH:mm:ss.sssZ
但是当我尝试使用这种格式过滤日期时,我看不出输出有任何差异。这是一个演示我的意思的小提琴http://jsfiddle.net/4zpqj7zb/
<div ng-app="myApp" ng-controller="myCtrl">
Some Date: {{ someDate | date:'dd-MMM-yyyy' }}
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.someDate = "2015-04-30T11:17:983.008Z";
});
</script
为什么我的表达式中没有格式正确的日期?
我错过了一些明显的东西吗?
答案 0 :(得分:2)
您的字符串日期在几秒钟内就错了。您有sss.sss
(983.008),而ss.sss
的值为&lt; = 60(58.008),这是正确的:
<div ng-app="myApp" ng-controller="myCtrl">
Some Date: {{ someDate | date:'dd-MMM-yyyy' }}
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.someDate = "2015-04-30T11:17:58.008Z";
});
</script>