如何仅应用一些过滤器来创建局部变量?

时间:2015-02-22 05:05:46

标签: javascript angularjs angular-filters

我有ng-repeat喜欢这样:

item in items | filter:myFilter | page:currentPage

我想知道filter:myFilter导致分页的当前项目数。但是,this answer会导致两个过滤器都被应用(并且分页会认为只有一页结果)。

如何有条件地将过滤器应用于ng-repeat中创建的变量?

1 个答案:

答案 0 :(得分:1)

完全有可能只在括号中包含一些过滤器。在上述情况下,您可以执行以下操作:

item in filteredItems = (items | filter:myFilter) | page:currentPage

items | filter:myFilter的结果将分配给filteredItems,然后由page:currentPage进一步过滤。

需要注意的一点是filteredItems将设置在由ng-repeat创建的范围的父范围内,因此您需要了解碰撞。