我在使用ng-options
过滤String数组时遇到问题假设我有一个这种类型的数组
$scope.params.output = ["A","B","A","B","A","B"];
以及此类型的HTML:
ng-options="item as item for item in params.output | unique : 'item'"
我的选择渲染所有数组,而不过滤它,我哪里出错了?
答案 0 :(得分:0)
在您的代码中添加unique.js。复制此js并将其放在单独的js文件中并将其附加到您的代码
答案 1 :(得分:0)
使用此过滤器。它会起作用。
app.filter('unique', function() {
return function(collection, keyname) {
var output = [],
keys = [];
angular.forEach(collection, function(item) {
var key = item[keyname];
if(keys.indexOf(key) === -1) {
keys.push(key);
output.push(item);
}
});
return output;
};
});
<强>模板强>:
<div ng-repeat="item in items | unique: 'id'"></div>