我使用的角度,并具有以下过滤功能在我的控制器:日期比较就像一个字符串比较
$scope.filterDocuments = function (row) {
var dateCompare = $filter('date')(row.FilingDate, 'MM/dd/yyyy');
if (dateCompare >= $scope.dateLimit) {
if ($scope.query === '' || $scope.query === undefined) {
return true;
} else if (angular.lowercase(row.Description).indexOf($scope.query) !== -1) {
return true;
} else {
return false;
}
} else {
return false;
}
};
此功能使用了NG-重复过程中对数据进行筛选。日期比较的结果就像一个字符串比较。我试图将代码更改为:
$scope.filterDocuments = function (row) {
var dateCompare = $filter('date')(row.FilingDate, 'MM/dd/yyyy');
if (dateCompare.getTime() >= $scope.dateLimit.getTime()) {
if ($scope.query === '' || $scope.query === undefined) {
return true;
} else if (angular.lowercase(row.Description).indexOf($scope.query) !== -1) {
return true;
} else {
return false;
}
} else {
return false;
}
};
而且这种情况更糟!
如何解决这个问题,使日期比较工作,我可以根据日期过滤?
这条线路目前还不清楚'VAR dateCompare = $过滤器( '日期')(row.FilingDate,“MM/DD/yyyy');''dateCompare'的类型是什么。你调试过代码并检查'dateCompare'和'$ scope.dateLimit'的值/类型吗? –
'$ filter('date')'返回格式化字符串 – Grundy
如果它返回一个字符串,为什么OP会抱怨字符串比较?它正在做他们要求它做的事情? OP,你没有很好地解释问题是什么,你正在使用什么输入,究竟是如何失败? –