按当前日期/时间angularjs的数据过滤

时间:2015-02-04 21:30:36

标签: angularjs

我试图过滤这个json,所以它只显示当前时间的条目:

JSON http://www.football-data.org/teams/354/fixtures/?callback=JSON_CALLBACK

HTML

<tr ng-repeat="fixture in fixtures.fixtures | greaterThan:fixture.date:date">
        <td>{{$index + 1}}</td>
        <td>{{teamName(fixture.awayTeam)}}</td>

CONTROLLER

    .controller('fixturesController', function($scope, $routeParams, footballdataAPIservice) {
        $scope.id = $routeParams.id;
        $scope.fixtures = [];
        $scope.date = new Date();

        footballdataAPIservice.getFixtures($scope.id).success(function (response) {
            $scope.fixtures = response; 
        }); 


});

FILTER

angular.module('PremierLeagueApp', [])

    .filter('greaterThan', function() {
            return function (actualDate, comparisonDate) {
                return Date(actualDate) > Date(comparisonDate);
            };
        });

这对我不起作用,任何人都明白为什么不呢?

2 个答案:

答案 0 :(得分:0)

你的问题似乎与日期比较有关。

尝试将其更改为:

 return actualDate > new Date(comparisonDate);

因为actualDate是js Date对象,而comparisonDate只是来自json的字符串。

答案 1 :(得分:0)

我认为您希望返回更大的日期,而不是实际日期是否大于比较日期。我是对的吗?

无论如何here是一个类似于你的问题。使用日期时间对象可以解决您的比较问题。