我有一个对象
{
key1: value1,
key2: value2
}
如何在ui-select-choices
中重复此操作?我尝试了一些事情,但没有任何工作
<ui-select ng-model="selectedChoice" theme="select2">
<ui-select-match placeholder="{{'select_product' | translate}}" allow-clear="true">
<span ng-bind="$select.selected"></span>
</ui-select-match>
<ui-select-choices repeat="key as (key, value) in (productList | filter: $select.search)">
<span>{{::key}}</span>
</ui-select-choices>
</ui-select>
答案 0 :(得分:1)
这应该有效:
<ui-select-choices repeat="product.key as (key, product) in productList | filter: {'value':$select.search}">
<span ng-bind-html="product.value"></span>
</ui-select-choices>
Angular UI Select以这种方式迭代对象:在迭代每对(key, value)
而不是直接访问值时,一个对象(在我上面的代码中命名为product
创建包含名为key
和value
的两个属性,其中key
是初始对象的实际键,value
是键的值。该对象应该用于访问实际值。
例如,对于以下初始数据对象
{
key1: {
id: 1,
name: 'John'
},
key2: {
id: 2,
name: 'Alex'
}
}
在第一次迭代时,将创建这样的对象:
{
key: 'key1',
value: {
id: 1,
name: 'John'
}
}
对于您的数据对象,将在第一次迭代(product
)上创建以下对象:
{
key: 'key1',
value: 'value1'
}