>웹 프론트엔드 >JS 튜토리얼 >AngularJS를 작동하고 필터 사용자 정의 필터를 사용하여 ng-repeat 중복 제거를 제어하는 ​​방법

AngularJS를 작동하고 필터 사용자 정의 필터를 사용하여 ng-repeat 중복 제거를 제어하는 ​​방법

php中世界最好的语言
php中世界最好的语言원래의
2018-06-02 14:11:042210검색

이번에는 AngularJS필터를 사용하여 Filter ng-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:&#39;id&#39;">
    {{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 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 도서:

jQuery에서 이미지 표시 플러그인 highslide.js를 사용하는 방법

Vue

에서 페이지 하단으로 스크롤하여 데이터 무한 로딩을 구현하는 방법

위 내용은 AngularJS를 작동하고 필터 사용자 정의 필터를 사용하여 ng-repeat 중복 제거를 제어하는 ​​방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.