过滤AngularJS的列表中的项目数

时间:2013-02-14 01:05:41

标签: angularjs filtering

如何获得AngularJS中过滤谓词返回的项目的长度/数量?

4 个答案:

答案 0 :(得分:75)

感谢Pawel Kozlowski,我在AngularJS Google Group上找到了一个很好的答案。

ng-repeat="item in filtered = (items | filter:filterExpr)"

即时创建filtered列表,您可以在当前范围内的任何其他位置使用filtered.length来显示计数。

答案 1 :(得分:6)

解决方案

试试这个:

<强> HTML

<span ng-bind="nb"></span>

<强>的Javascript

$scope.nb = $filter('filter')(items, filterExpr).length;

文档

在HTML模板绑定中

{{ filter_expression | filter : array : expression : comparator}}

在JavaScript中

$filter('filter')(array, expression, comparator)

答案 2 :(得分:4)

我还必须显示已过滤数组的长度,这个对我有用:

{{ (items | filter:filterExpr).length }}

答案 3 :(得分:0)

事实上,这适用于显示过滤器(orderBylimitTo

item in list = ( item_array|filter:some_str) | orderBy: pref | limitTo: nItemToDisplay

如果您需要一次显示5个项目,您仍然可以使用list.length。可用于分页或数据表。