我从Angular JS开始,我遇到了问题。 我在控制器中有以下功能,将过滤器应用于表的ng-repeat。
$scope.dateRangeFilter = function (property, startDate, endDate) {
if (startDate==null)
{
startDate=moment('1900-01-01',"YYYY-MM-DD");
var s=moment(startDate,"YYYY-MM-DD");
}
else
{
var datestart = new Date(startDate);
var s=moment(datestart.getFullYear() + '/' + ("0" + (datestart.getMonth() + 1)).slice(-2) + '/' + datestart.getDate() ,"YYYY-MM-DD");
}
if (endDate==null)
{
endDate=moment('2999-31-12',"YYYY-MM-DD");
var e=moment(endDate,"YYYY-MM-DD");
}
else
{
var datend = new Date(endDate);
var e=moment(datend.getFullYear() + '/' + ("0" + (datend.getMonth() + 1)).slice(-2) + '/' + datend.getDate() ,"YYYY-MM-DD");
}
return function (item) {
if (item[property] === null) return false;
var itemDate = moment(item[property]);
if (itemDate >= s && itemDate <= e) return true;
return false;
}
}
然后我将它应用于ng-repeat
<tr ng-repeat="user in plazas | filter: dateRangeFilter('date', fechaDesde, fechahasta)">
我需要的是能够将相同的过滤器应用于控制器,因为我需要获取具有其他功能的过滤器的记录数。
$scope.getData = function () {
return $filter('filter')($scope.plazas, ..............................)
}
有什么想法吗?非常感谢你