过滤器无法在ng-repeat中工作

Sob*_*bis 4 javascript angularjs angularjs-filter

我有一个关于ng-repeat过滤的问题.

这是模板代码:

<li ng-repeat="friend in friends | filter:personFilter">
    <span>{{friend.name}}</span>
    <span>{{friend.phone}}</span>
    <span>{{friend.items | GetItemsTitels}}</span>
</li>
</lang-html>
Run Code Online (Sandbox Code Playgroud)

其中GetItemsTitels返回一些字符串. 这是现场演示

为什么doenst personFilter在最后一栏上工作,显示从GetItemsTitels过滤器返回的stirng?如果jsfiddle如果你在过滤器中键入'aa'你不会得到任何结果.是因为此列的过滤器已经分配,​​这就是为什么personFilter不适用它?

TOB*_*der 6

据我所知:

过滤器仅适用于"数组"类型,而不适用于"对象"类型.

给定:

var friends={'a':'april','b':'bob'};

<li ng-repeat="friend in friends | filter:personFilter">
<!-- personFilter will not run -->


var friends=[{code:'a',name:'april'},{code:'b',name:'bob'}];
personFilter=function(item){
    return item.code !== personModel
}

<li ng-repeat="friend in friends | filter:personFilter">
<!-- will filter -->
Run Code Online (Sandbox Code Playgroud)