一尘不染

Angular.js。如何计算满足自定义过滤条件的ng重复迭代

angularjs

这是我的代码:

<div ng-show="?" ng-repeat="item in items | notEmpty">
</div>

过滤:

Kb.filter("notEmpty", function(){ 
  return function(input){
    var output=[];
    for(var i=0;i<input.length;i++){
      if(input[i]){
        output.push(input[i]);
      }
    }
    return output;
}});

我需要根据循环中已过滤项目的数量显示/隐藏重复的s。最好的方法是什么?

谢谢


阅读 208

收藏
2020-07-04

共1个答案

一尘不染

ng-repeat表达式允许将过滤后的结果分配给变量。从当前作用域可以访问此变量,因此您可以随时在同一作用域中使用它:

<p>Number of filtered items: {{filteredItems.length}}</p>

<div 
  ng-show="filteredItems.length > 0" 
  ng-repeat="item in filteredItems = (items | notEmpty)"
>
 {{$index}}
</div>
2020-07-04