Angular.js.如何计算满足自定义过滤器的ng-repeat迭代次数

Fyo*_*hov 21 javascript angularjs ng-repeat

这是我的代码:

<div ng-show="?" ng-repeat="item in items | notEmpty">
</div>
Run Code Online (Sandbox Code Playgroud)

过滤:

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;
}});
Run Code Online (Sandbox Code Playgroud)

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

谢谢

Ste*_*wie 58

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>
Run Code Online (Sandbox Code Playgroud)

  • 谢谢.我不知道我可以做这样的语法:`ng-repeat ="filterItems中的项目=(items | notEmpty)" (2认同)