我目前正在通过自定义ngRepeat
过滤器和startAtIndex
过滤器的组合对我的limitTo
进行分页。我想显示数据集中的结果总数,而不管页面如何。但是,当您使用limitTo
时,这显然会在此时关闭数组,并且您无法获得所需的长度属性。
我的ngRepeat
:
ng-repeat-start="colleague in pagination.filteredData = (colleagueDataArray | filter:{name: queries.name} | filter:{client: queries.client} | filter:queries.generalQuery | orderBy:sortByField:reverseSort | startFrom: pagination.startAtIndex | limitTo:pagination.pageSize)">
我将过滤器的结果分配给pagination.filteredData
对象,然后我可以使用{{pagination.filteredData.length}}
在控制器的任何位置显示它的长度。
在startAtIndex
和limitBy
过滤之前,我怎样才能获得过滤后的数组的长度?我可以以某种方式部分过滤colleagueDataArray
数组,然后使用filteredArray
再次过滤生成的ngRepeat
吗?
如果这对您没有意义,请告诉我,以便我可以编辑问题。
答案 0 :(得分:0)
编写自定义过滤器,无论您在那里尝试什么。
ng-repeat="data in bigData | filter:myfilter"
$scope.myfilter= function(data)
{
// Check length or i dont know
// $scope.bigData.length
if($scope.bigData.length > 2)
{
return true; // this will be listed in the results
}
return false; // otherwise it won't be within the results
};