我想過濾那些匹配對象內特定條件的對象列表中的對象ng-options
。通過ng選項中的數組進行過濾
例如,我有這樣的數據:由數組中的項目數過濾列表
{
id:1,
type:"Type A",
name:"loc 1",
items:[
{id:1, name:"item 1"},
{id:2, name:"item 2"},
{id:3, name:"item 3"},
]
},
我選擇這個樣子的
<select ng-model="test" ng-options="location as (location.name + ' ' + location.items.length + ' items') group by location.type for location in locations | filter:{items.length:filterBy.itemId}">
</select>
以下作品中的例子,但什麼我想要做的是過濾那些具有條件的列表,例如具有id = 1的項目的所有對象。
這是一個與上述工作小提琴。
我想什麼/預期(僞)類似:
ng-options="location as (location.name + ' ' + location.items.length + ' items') group by location.type for location in locations | filter:{items{id:filterBy.itemId}}"
它甚至有可能?
更新:上面的小提琴已經更新了@Marcos Sandrini的答案中的代碼,以備任何人需要時使用。
我不明白如何以任何方式過濾我的列表? – DeclanMcD 2015-02-06 11:28:58
我現在補充說。檢查這是否給出你想要的結果。 – 2015-02-06 11:33:33
我設法讓你的代碼在我的小提琴上工作,並更新了工作版本的小提琴,如果任何人想要它。該groupBy不工作,並拋出一個錯誤,所以我已經離開了那一刻。謝謝。 – DeclanMcD 2015-02-06 12:30:26