【发布时间】:2015-10-05 01:39:48
【问题描述】:
根据this question 接受的答案,如果我想显示过滤后的 ng-repeat 数据的长度,我会这样做:
<div ng-repeat="person in filtered = (data | filter: query)">
</div>
显示结果数:
Showing {{filtered.length}} Persons
我的问题是,当我还使用limitTo 过滤器时,我将如何使用那个简单的查询过滤器显示数据的长度:
<div ng-repeat="person in data | filter: query | limitTo: itemsPerPage">
</div>
需要明确的是,如果 data | filter: query 和 itemsPerPage = 10 产生 100 个项目,那么在我的情况下,我希望 filtered.length 为 100,而不是我从中得到的 10:
<div ng-repeat="person in filtered = (data | filter: query) | limitTo: itemsPerPage">
</div>
有没有办法从链中较早的过滤中获取过滤结果的长度,同时仍沿链应用更多可能影响过滤结果长度的过滤器?
【问题讨论】:
-
我不明白
limitTo在您的示例中应该如何工作。如果过滤的结果数量高于限制,那么您要全部显示它们吗?这没有意义 -
这是我做分页的方式;这不是我的完整代码,但它抓住了我需要的本质。我想要查询过滤器出来的结果的长度值,但最终只会显示这些结果中的
itemsPerPage -
你的最后一次尝试应该达到你想要的结果
-
这是你需要的吗:jsfiddle.net/w3ysafo2/7 ?
标签: javascript angularjs angularjs-ng-repeat