本文实例讲述了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中$filter过滤器使用(自定义过滤器)
- Angularjs 依赖压缩及自定义过滤器写法
- AngularJS 自定义过滤器详解及实例代码
- 详解AngularJS中自定义过滤器
- 使用AngularJS创建自定义的过滤器的方法
- AngularJS中过滤器的使用与自定义实例代码
- 详解Angular的内置过滤器和自定义过滤器【推荐】
- 简述angular自定义过滤器在页面和控制器中的使用
- Angular.Js中过滤器filter与自定义过滤器filter实例详解
- AngularJS自定义过滤器用法经典实例总结