Javascript 如何筛选日期大于ng repeat的ng repeat

Javascript 如何筛选日期大于ng repeat的ng repeat,javascript,angularjs,angularjs-ng-repeat,angular-filters,Javascript,Angularjs,Angularjs Ng Repeat,Angular Filters,我想按大于今天的日期将筛选器添加到筛选器ng repeat中。 例如,选中复选框仅显示大于今天的日期,取消选中全部显示。 以下是我所尝试的: $scope.gteComparator = function (a, b) { return new Date(a) >= new Date(b); }; $scope.greaterThan = function (prop, val) { return prop > val; } 关于这一观点: ng-repeat="row

我想按大于今天的日期将筛选器添加到筛选器ng repeat中。
例如,选中复选框仅显示大于今天的日期,取消选中全部显示。
以下是我所尝试的:

$scope.gteComparator = function (a, b) {
   return new Date(a) >= new Date(b);
};
$scope.greaterThan = function (prop, val) {
   return prop > val;
}
关于这一观点:

ng-repeat="row in myModel" | filter: firstFilter| | filter:{ 'DateColumn': (new Date()) }:gteComparator

但都不行,我该怎么办?

angular.module('app',[]);
angular.module('app').filter('greaterThanToday',()=>{
const now=新日期();
const day=now.getDate();
const month=now.getMonth();
const year=now.getFullYear();
const明天=新日期(年、月、日+1);
返回(日期)=>{
返回日期。筛选器((日期)=>日期-明天>=0);
};
});
角度。模块('app')。控制器('Example',函数(){
此参数为.dates=[];
对于(让i=0;i在视图上:

ng-repeat="row in myModel | myFilter"
控制器代码:

var nameSpace = angular.module('tst',[]);
nameSpace.controller('MyController', function MyController($scope) {
//controller here
});

nameSpace.filter("myfilter", function() {
  return function(items) {
    var arrayToReturn = [];        
    for (var i=0; i<items.length; i++){
        var date = items[i].date;
        if (date > new Date())  {
            arrayToReturn.push(items[i]);
        }
    }

    return arrayToReturn;
 };
});
var nameSpace=angular.module('tst',[]);
nameSpace.controller('MyController',函数MyController($scope){
//这里是控制器
});
nameSpace.filter(“myfilter”,function()){
返回函数(项目){
var arrayToReturn=[];
对于(变量i=0;i新日期()){
arrayToReturn.push(项目[i]);
}
}
返回阵列返回;
};
});
回答您的问题:
var nameSpace = angular.module('tst',[]);
nameSpace.controller('MyController', function MyController($scope) {
//controller here
});

nameSpace.filter("myfilter", function() {
  return function(items) {
    var arrayToReturn = [];        
    for (var i=0; i<items.length; i++){
        var date = items[i].date;
        if (date > new Date())  {
            arrayToReturn.push(items[i]);
        }
    }

    return arrayToReturn;
 };
});