我希望以毫秒为单位输出日期,但它不起作用。
在html文件中我有:
{{product.date_expiration}}:// wich output ==> 2018-01-13T12:22:06.165Z
{{CurrentDate}}:// wich output ==> “2017-02-10T13:18:58.339Z”
with:
date_expiration: {type: Date}
和:
{CurrentDate}}: {type: Date}
当我尝试以毫秒为单位获取日期时:
{{product.date_expiration.getTime()}} ==>不输出任何东西
和:
{{CurrentDate.getTime()}} ==> output 1486733469830
任何帮助将不胜感激。感谢
答案 0 :(得分:0)
似乎date_expiration
不是日期对象。因此getTime()
函数无法正常工作。我们必须使用过滤器将其转换为Date对象&给我们时间毫秒,因为我们不能在角度表达式中使用Date()
。
var app = angular.module('myApp', []);
app.filter('inMilliseconds', function() {
return function(x) {
return new Date(x).getTime();
};
});
app.controller('myCtrl', function($scope) {
$scope.date_expiration = "2018-01-13T12:22:06.165Z";
$scope.currentDate = new Date();
});
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
date_expiration: {{date_expiration | inMilliseconds }}
<br>
currentDate: {{currentDate.getTime() }}
</div>
<script>
</script>
</body>
</html>