AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例
本文实例讲述了AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能。分享给大家供大家参考,具体如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>www.jb51.net ng-repeat去除重复</title> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body> <div ng-app="myApp" ng-controller="myCtrl"> <p ng-repeat="x in items | unique:'id'"> {{x.id}}---{{x.name}} </p> </div> <script> //AngularJs 自定义过滤器 //1.使用过滤器,去除重复 angular.module('common', []).filter('unique', function () { return function (collection, keyname) { console.info(collection); console.info(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; } }); var app = angular.module('myApp', ['common']); app.controller('myCtrl', function ($scope) { //$scope.items = [1, 2, 3,2]; //当前unique 的过滤只针对,对象数组过滤 $scope.items = [ { id: 1, name: 'zhangsan' }, { id: 2, name: 'lisi' }, { id: 1, name: 'zhangsan' }, ]; }); </script> </body> </html>
运行结果:
PS:这里再为大家提供几款相关工具供大家参考使用:
在线去除重复项工具:
http://tools.jb51.net/code/quchong
在线文本去重复工具:
http://tools.jb51.net/aideddesign/txt_quchong
更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《AngularJS指令操作技巧总结》、《AngularJS入门与进阶教程》及《AngularJS MVC架构总结》
希望本文所述对大家AngularJS程序设计有所帮助。
相关文章
AngularJS控制器controller给模型数据赋初始值的方法
这篇文章主要介绍了AngularJS控制器controller给模型数据赋初始值的方法,涉及AngularJS控制器controller简单赋值操作实现技巧,需要的朋友可以参考下2017-01-01AngularJS解决ng-if中的ng-model值无效的问题
本篇文章主要介绍了AngularJS解决ng-if中的ng-model值无效的问题,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-06-06AngularJS2中一种button切换效果的实现方法(二)
这篇文章主要介绍了AngularJS2中一种button切换效果的实现方法(二),非常不错,具有参考借鉴价值,需要的朋友可以参考下2017-03-03在AngularJS中使用jQuery的zTree插件的方法
这篇文章主要介绍了在AngularJS中使用jQuery的zTree插件的方法,Angular中集成了jqLite,但还不是完全版的jQuery,需要的朋友可以参考下2016-04-04Angularjs中三种数据的绑定策略(“@”,“=”,“&”)
在AngularJS的指令中存在着三种绑定策略,他们分别是’=’,’@’,’&’。下面这篇文章主要介绍了Angularjs中这三种数据的绑定策略,有需要的朋友们可以参考借鉴,下面来一起看看吧。2016-12-12
最新评论