图形化地隐藏一些使用ng-repeat迭代的项
Hide graphically some items iterating with ng-repeat
我正在使用Angular Js开发一个web应用程序。我想填充一个div,到我的html视图,使用ng-repeat指令。ng-repeat使用的数组有一些重复项,但在我的视图中,我希望只显示一项(如果一个元素已经显示过,那么它的副本必须以图形方式隐藏)。我该怎么做呢?
<div ng-repeat="item in selectedProcedures track by $index">
<span>{{item.id}}</span>
</div>
就像这样使用一个唯一的过滤器:
<div ng-repeat="item in selectedProcedures track by $index | unique : 'id'">
<span>{{item.id}}</span>
</div>
然后创建唯一的过滤器:
app.filter('unique', function() {
return function(collection, property) {
var output = [];
angular.forEach(collection, function(item) {
//check if it exists in output on the basis of property, if not then add to output
output.push(item);
})
return output;
}
})
函数中的'property'在示例中是'id',而collection指的是整个数组。
我建议您不要隐藏生成的Html,而是添加一个过滤器来删除重复项:
<div ng-repeat="item in selectedProcedures track by $index | deleteDuplicates">
. . .
</div>
angular.module('myApp').filter('deleteDuplicates', function(){
return function filterCore(source)
{
var out = [];
// . . .
return(out);
};
});
下面是AngularJS自定义过滤器教程
相关文章:
- AngularJs Datatables 无法使用 ng-repeat 在 html 上迭代列
- AngularJS Ng-Repeat不迭代$Scope中的项目
- AngularJs:我想从数组或列表中添加一个类,用于ng-repeat中的每次迭代
- 角度.js. 如何计算满足自定义过滤器的 ng 重复迭代
- 有没有办法重新映射使用 ng-repeat 迭代的对象的关键值
- 如何为由 ng-repeat 迭代的每个名称和值添加单独的宽度
- 在AngularJS中使用ng repeat调用和迭代函数返回值
- angularJS ng重复迭代器字符串重用
- 使用Angular ng-repeat迭代对象数组的非均匀性
- 图形化地隐藏一些使用ng-repeat迭代的项
- AngularJS使用ng-repeat迭代多层数组
- 选择除选中的NG-Repeat迭代之外的所有NG-Repeat迭代
- 在Angular.js中,如何在点击时使用ng-repeat迭代对象列表中修改元素的属性?
- Angular ng-option:迭代一个数字数组,以显示另一个数组的内容,但在ng-model中选择了索引
- 在AngularJS中限制ng-repeat迭代
- Angular:如何使用ng repeat迭代数组中除最终索引外的所有索引
- Angularjs ng-repeat:迭代一个特殊的对象字段
- angular.js中的动态模板值ng:重复迭代
- ng-repeat(迭代)在 Angular 中的复杂 json 对象上
- 如何在角度中使用 ng-repeat 迭代对象