首页 > 编程 > JavaScript > 正文

AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能示例

2019-11-19 13:59:09
字体:
来源:转载
供稿:网友

本文实例讲述了AngularJS使用Filter自定义过滤器控制ng-repeat去除重复功能。分享给大家供大家参考,具体如下:

<!DOCTYPE html><html><head><meta charset="utf-8"><title>www.VeVB.COm 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.VeVB.COm/code/quchong

在线文本去重复工具:
http://tools.VeVB.COm/aideddesign/txt_quchong

更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《AngularJS指令操作技巧总结》、《AngularJS入门与进阶教程》及《AngularJS MVC架构总结

希望本文所述对大家AngularJS程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表