>  기사  >  웹 프론트엔드  >  Angular의 groupBy 필터를 사용하여 팀별로 데이터를 그룹화하는 방법은 무엇입니까?

Angular의 groupBy 필터를 사용하여 팀별로 데이터를 그룹화하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-17 11:59:02197검색

How to Group Data by Team Using Angular's groupBy Filter?

Angular 필터를 사용하여 데이터 그룹화: 종합 가이드

데이터를 의미 있는 카테고리로 그룹화하는 것은 프로그래밍의 일반적인 작업이며 Angular는 강력한 이를 용이하게 하는 필터링 메커니즘. 이 기사에서는 Angular의 groupBy 필터를 사용하여 플레이어 목록을 팀으로 구성하는 방법을 보여줍니다.

문제:

해당 팀의 플레이어 데이터세트가 있습니다. 팀별로 그룹화된 플레이어를 표시하려면 이 데이터 세트를 필터링해야 합니다.

예제 데이터 세트:

players = [
  { name: 'Gene', team: 'team alpha' },
  { name: 'George', team: 'team beta' },
  { name: 'Steve', team: 'team gamma' },
  { name: 'Paula', team: 'team beta' },
  { name: 'Scruath', team: 'team gamma' }
];

예상 출력:

<li>team alpha
  <ul>
    <li>Gene</li>
  </ul>
</li>
<li>team beta
  <ul>
    <li>George</li>
    <li>Paula</li>
  </ul>
</li>
<li>team gamma
  <ul>
    <li>Steve</li>
    <li>Scruath</li>
  </ul>
</li>

해결책:

이 그룹화를 달성하기 위해 Angular는 angle.filter 모듈에서 groupBy 필터를 제공합니다. 이 필터는 속성을 인수로 취하고 키가 해당 속성의 고유 값이고 값이 해당 속성 값을 공유하는 객체의 배열인 객체를 반환합니다.

우리의 경우에는 다음을 수행하고 싶습니다. 팀 속성별로 플레이어를 그룹화합니다. 이를 수행하는 방법은 다음과 같습니다.

JavaScript:

$scope.players = players; // Assign the dataset to a scope variable

HTML:

<ul ng-repeat="(team, players) in players | groupBy: 'team'">
  <li>{{team}}
    <ul>
      <li ng-repeat="player in players">{{player.name}}</li>
    </ul>
  </li>
</ul>

ng-repeat를 사용하는 groupBy 필터를 사용하면 각 팀이 목록 항목으로 표시되고 해당 팀에 속한 플레이어가 중첩된 목록 항목으로 나열되는 데이터의 계층적 보기를 만들 수 있습니다. 결과는 그룹화된 데이터를 체계적이고 이해하기 쉽게 표현한 것입니다.

참고:

angular.filter 모듈을 사용하려면 다음과 같이 추가해야 합니다. Angular 모듈의 종속성.

위 내용은 Angular의 groupBy 필터를 사용하여 팀별로 데이터를 그룹화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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