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


Posted in Javascript onApril 21, 2018

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

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>3water.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>

运行结果:

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

Javascript 相关文章推荐
北京奥运官方网站幻灯切换效果flash版打包下载
Jan 30 Javascript
jQuery队列控制方法详解queue()/dequeue()/clearQueue()
Dec 02 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
Sep 22 Javascript
Node.js异步I/O学习笔记
Nov 04 Javascript
JS中跨页面调用变量和函数的方法(例如a.js 和 b.js中互相调用)
Nov 01 Javascript
WEB开发之注册页面验证码倒计时代码的实现
Dec 15 Javascript
jQuery实现鼠标悬停3d菜单展开动画效果
Jan 19 Javascript
jQuery Jsonp跨域模拟搜索引擎
Jun 17 jQuery
JS实现简单的选择题测评系统代码思路详解(demo)
Sep 03 Javascript
用 Vue.js 递归组件实现可折叠的树形菜单(demo)
Dec 25 Javascript
关于ckeditor在bootstrap中modal中弹框无法输入的解决方法
Sep 11 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
Sep 21 Javascript
JS实现字符串去重及数组去重的方法示例
Apr 21 #Javascript
AngularJs用户输入动态模板XSS攻击示例详解
Apr 21 #Javascript
vue源码解析之事件机制原理
Apr 21 #Javascript
JavaScript获取用户所在城市及地理位置
Apr 21 #Javascript
在vue-cli项目中使用bootstrap的方法示例
Apr 21 #Javascript
详解webpack模块化管理和打包工具
Apr 21 #Javascript
Node.Js生成比特币地址代码解析
Apr 21 #Javascript
You might like
初学PHP的朋友 经常问的一些问题。不断更新
2011/08/11 PHP
PHP使用in_array函数检查数组中是否存在某个值
2015/03/25 PHP
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
file模式访问网页时iframe高度自适应解决方案
2013/01/16 Javascript
Javascript Throttle &amp; Debounce应用介绍
2013/03/19 Javascript
仿谷歌主页js动画效果实现代码
2013/07/14 Javascript
Nodejs实现多人同时在线移动鼠标的小游戏分享
2014/12/06 NodeJs
JQuery标签页效果实例详解
2015/12/24 Javascript
JavaScript操作选择对象的简单实例
2016/05/16 Javascript
基于Turn.js 实现翻书效果实例解析
2016/06/20 Javascript
javascript 中Cookie读、写与删除操作
2017/03/29 Javascript
Vue.js组件通信的几种姿势
2017/10/23 Javascript
记录一篇关于redux-saga的基本使用过程
2018/08/18 Javascript
Node.js一行代码实现静态文件服务器的方法步骤
2019/05/07 Javascript
js函数和this用法实例分析
2020/03/13 Javascript
用Python进行简单图像识别(验证码)
2018/01/19 Python
Python中pillow知识点学习
2018/04/30 Python
python的pytest框架之命令行参数详解(上)
2019/06/27 Python
详解用Python为直方图绘制拟合曲线的两种方法
2019/08/21 Python
VSCode中自动为Python文件添加头部注释
2019/11/14 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
python实现的分层随机抽样案例
2020/02/25 Python
浅谈在JupyterNotebook下导入自己的模块的问题
2020/04/16 Python
Python 如何调试程序崩溃错误
2020/08/03 Python
python实现画图工具
2020/08/27 Python
python中scipy.stats产生随机数实例讲解
2021/02/19 Python
AmazeUI 网格的实现示例
2020/08/13 HTML / CSS
Expedia印度:您的一站式在线旅游网站
2017/08/24 全球购物
Janie and Jack美国官网:GAP旗下的高档童装品牌
2019/09/09 全球购物
匡威西班牙官网:Converse西班牙
2019/10/01 全球购物
庆祝教师节活动方案
2014/01/31 职场文书
求职信的最佳写作思路
2014/02/01 职场文书
教师自我反思材料
2014/02/14 职场文书
艺术设计专业个人求职信
2014/04/10 职场文书
运动会闭幕式主持词
2015/07/01 职场文书
python字符串的一些常见实用操作
2022/04/06 Python