角度日期过滤器不适用于ng重复

Angular date filter not working with ng-repeat

本文关键字:适用于 ng 重复 不适用 过滤器 日期      更新时间:2023-09-26

控制器

app.controller("MarketController", function ($scope) {
    $scope.dates = [
        { date: Date.parse("01/01/1999"), value: 123.456 },
        { date: Date.parse("02/05/2004"), value: 789.123 }
    ];
});

模板

<li ng-repeat="item in dates">
    <span>{{item.date | date: 'EEE'}}</span>
</li>

日期值不适用于筛选器,我做错了什么?

它实际上是有效的:

var app = angular.module('test', []);
app.controller("MarketController", function($scope) {
  $scope.dates = [{
    date: Date.parse("01/01/1999"),
    value: 123.456
  }, {
    date: Date.parse("02/05/2004"),
    value: 789.123
  }];
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.1/angular.min.js"></script>
<div ng-app='test' ng-controller='MarketController'>
  <li ng-repeat="item in dates">
    <span>{{item.date | date: 'EEE'}} - {{ item.value }}</span>
  </li>
</div>

可能你拼错了ng-repeat

尝试以下方法进行日期筛选:

$filter('date')(date, 'yyyy.dd.MM');

不要忘记在以下行中注入$filter

..['$scope', '$filter', function($scope, $filter){...}