2017-09-05 42 views
1

Angular ngRepeat documentation,您可以使用别名表达只有在ngRepeat末:AngularJS NG重复别名表达

请注意,'为[变量名称]是不是运营商,而是一个 ngRepeat微语法的一部分,所以它只能在末尾使用(而 不作为运算符,在表达式中)。

在我ng-repeat,我需要根据属性来筛选出的项目,然后使用分页目的limitTo过滤器。

如何在第二个过滤器之前获取过滤项目的数量?

这并不ofcourse工作:

item in c.items | filter: c.contextFilter as filteredItems | limitTo: c.pagination.pageSize : c.pagination.currentPage*c.pagination.pageSize 

是否有其他方法可以让我得到filteredItems.length价值?

+0

如果您在控制器应用过滤器就会很容易。 –

回答

1

我有同样的问题,我解决它将过滤器表达式的第一部分的结果分配到一个新的变量。在您的例子:

item in filteredItems = (c.items | filter: c.contextFilter) | limitTo: c.pagination.pageSize : c.pagination.currentPage*c.pagination.pageSize

<div>{{filteredItems.length}}</div>

完整的示例与controllerAs语法:

item in $ctrl.filteredItems = ($ctrl.items | filter: $ctrl.customFilter | orderBy: $ctrl.order) | limitTo: $ctrl.pagination.pageSize : $ctrl.pagination.currentPage*$ctrl.pagination.pageSize

+0

很干净!谢谢 – BlueBallPanda