2014-09-30 3 views
0

데이터베이스에서 JSON으로 돌아가는 데이터 컬렉션이 있습니다. 나는이 결과를 필터링하고 내가 돌아 오는 각 영업 담당자의 이름을 알아야합니다. 트릭은 각 영업 담당자가 내 결과에 두 번 이상 있지만 마지막 목록에는 한 번만 이름을 포함 시키길 원합니다.Angular JS - 필터 및 그룹

그래서 사라, 벤, 벤, 존, 마이크, 누가 복음, 요한 복음

같은

$http({ 
     url: '/Clients/Orders/Json', 
     method: "GET", 
     params: {} 
    }).success(function (data) { 
     var JSON = data; 
     $scope.data = JSON; 
    });  

내 데이터가 $ 범위에서 발견된다 사라, 벤, 존, 마이크, 누가 복음을 반환 .데이터.

이 데이터를 실행하기위한 필터를 작성하고 내보기 페이지에서 필터링 된 정보에 액세스하는 방법에 대한 아이디어를 찾고 있습니다.

답변

0

필터 -

app.filter('distinct', function() { 
    return function(arrayInput) { 
     var distinctArray = []; 

     for (var i = 0; i < arrayInput.length; i++) { 
      if(distinctArray.indexOf(arrayInput[i]) < 0){ 
       distinctArray.push(arrayInput[i]); 
      } 
     } 

     return distinctArray; 
    }; 
}); 

그리고 배열에서 고유 한 이름을 필터링하는 컨트롤러 또는 서비스 필터 distinctFilter를 주입 $scope.data

app.controller('MyCtrl', function($scope, distinctFilter) { 
    ... 
    // populate $scope.data with array of names 

    $scope.distinctNames = distinctFilter($scope.data); 

});