我有一个具有一系列对象属性的对象,该对象具有以下类似结构(这是数据从服务返回的方式):
{
"1": {
"type": "foo",
"name": "blah"
},
"2": {
"type": "bar"
},
"3": {
"type": "foo"
},
"4": {
"type": "baz"
},
"5": {
"type": "test"
}
}
当我执行 ng-repeat 时,我可以遍历所有 5 个对象,例如:
<div ng-repeat="item in items">{{item.type}}</div>
但是,我真正想要做的只是迭代那些不是 "foo" 类型的项目,即 3 次迭代而不是 5 次。我知道可以以某种方式利用过滤器来做到这一点,但我不确定如何。我尝试了以下方法:
<div ng-repeat="item in items| !filter:{type:'foo'}">{{item.type}}</div>
但这不起作用。事实上,即使执行以下操作以限制为仅 2 个对象(那些具有 item.type==="foo" 的对象),它也不起作用并进行 5 次迭代:
<div ng-repeat="item in items| filter:{type:'foo'}">{{item.type}}</div>
本质上,我想做类似的事情:
<div ng-repeat="item in items" ng-if="item.type !=='foo'>{{item.type}}</div>
但是,我知道那是行不通的。