AngularJS过滤器用于嵌套对象

时间:2013-04-04 16:39:49

标签: angularjs angularjs-ng-repeat

我有一个包含对象数组的对象数组:

var content = [
  { 
    name: 'Foo',
    sub: [{ name: 'Bar' }, { name: 'Foobar' }] 
  },
  ...
]

和模板:

<input ng-model="search" />

<div ng-repeat="item in content | filter:search>
   {{item.name}}
   <div ng-repeat="key in item">
      {{key.name}}
   </div>
</div>

现在,我使用filter过滤器来搜索字符串匹配,但它仅适用于第一个ng-repeat指令。如何将第二个指令包含在搜索过滤器中?提前谢谢。

2 个答案:

答案 0 :(得分:0)

您只需将第二个过滤表达式应用于其他ng-repeat

即可

<div ng-repeat="key in item | filter:secondFilterExpression">

请参阅此处的文档http://docs.angularjs.org/api/ng.filter:filter

答案 1 :(得分:0)

好吧,我把对象简化为一个简单的集合,然后再通过控制器传递给模板,所以我不必担心第二个ng-repeat周期。输出是

[{ name : 'foo' }, { name : 'bar' }, { name : 'foobar' }]