ホームページ > 記事 > ウェブフロントエンド > AngularJS を操作し、Filter カスタム フィルターを使用して ng-repeat 重複排除を制御する方法
今回はAngularJSFilterを使ってカスタマイズするFilterng-repeat重複排除を制御する、AngularJSを操作してFilterを使ってng-repeatを制御するフィルターをカスタマイズする方法を紹介します注意点は以下の通りです。これは実際的なケースですので、見てみましょう。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ng-repeat去除重复</title> <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script> </head> <body> <p ng-app="myApp" ng-controller="myCtrl"> <p ng-repeat="x in items | unique:'id'"> {{x.id}}---{{x.name}} </p> </p> <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>
操作結果:
この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。
推奨読書:
jQuery で画像表示プラグイン highslide.js を使用する方法
ページの一番下までスクロールして Vue でデータの無限ロードを実装する方法
以上がAngularJS を操作し、Filter カスタム フィルターを使用して ng-repeat 重複排除を制御する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。