如何避免多个 angular ui select 中的重复
How to avoid duplicates in multiple angular ui select
我有多个 ui-select 小部件,我需要通过单击更新按钮来更新选项。
<ui-select multiple ng-model="multipleDemo.selectedPeople" theme="select2" ng-disabled="disabled" style="width: 800px;">
<ui-select-match placeholder="Select person...">{{$item.name}} <{{$item.email}}></ui-select-match>
<ui-select-choices repeat="person in people | propsFilter: {name: $select.search, age: $select.search}">
<div ng-bind-html="person.name | highlight: $select.search"></div>
{{person.email}}
</ui-select-choices>
</ui-select>
如果我为 people 变量使用字符串数组,它工作正常。但是当我使用对象数组时,重复出现在选择中。这是片段 http://plnkr.co/edit/Jbhv1stbXEdNnt3of5aW?p=preview 我怎样才能避免对象重复?请帮忙
我在这里 https://github.com/angular-ui/ui-select/issues/580 找到了解决方案。您可以过滤从 API.
收到的数据
$scope.people = response.data.data.filter(function (i) {
return $multipleDemo.selectedPeople.map(function (e) { return e.id; }).indexOf(i.id) < 0;
}
我有多个 ui-select 小部件,我需要通过单击更新按钮来更新选项。
<ui-select multiple ng-model="multipleDemo.selectedPeople" theme="select2" ng-disabled="disabled" style="width: 800px;">
<ui-select-match placeholder="Select person...">{{$item.name}} <{{$item.email}}></ui-select-match>
<ui-select-choices repeat="person in people | propsFilter: {name: $select.search, age: $select.search}">
<div ng-bind-html="person.name | highlight: $select.search"></div>
{{person.email}}
</ui-select-choices>
</ui-select>
如果我为 people 变量使用字符串数组,它工作正常。但是当我使用对象数组时,重复出现在选择中。这是片段 http://plnkr.co/edit/Jbhv1stbXEdNnt3of5aW?p=preview 我怎样才能避免对象重复?请帮忙
我在这里 https://github.com/angular-ui/ui-select/issues/580 找到了解决方案。您可以过滤从 API.
收到的数据$scope.people = response.data.data.filter(function (i) {
return $multipleDemo.selectedPeople.map(function (e) { return e.id; }).indexOf(i.id) < 0;
}