如何在 angular ui-select-选项中重复对象属性?

How to repeat object properties in angular ui-select-choices?

我有一个对象

{
    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>

这应该有效:

<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) created 包含两个名为 keyvalue 的属性,其中 key 是初始对象的实际键,value 是键的值。此对象应该用于访问真实值。

例如,对于以下初始数据对象

{
    key1: {
        id: 1,
        name: 'John'
    },
    key2: {
        id: 2,
        name: 'Alex'
    }
}

在第一次迭代中将创建这样的对象:

{
    key: 'key1',
    value: {
        id: 1,
        name: 'John'
    }
}

对于您的数据对象,将在第一次迭代 (product) 中创建以下对象:

{
    key: 'key1',
    value: 'value1'
}