programing

AngularJS - ng옵션:그룹명, 라벨 순으로 주문하는 방법

kingscode 2023. 3. 22. 22:47
반응형

AngularJS - ng옵션:그룹명, 라벨 순으로 주문하는 방법

예를 들어 다음과 같은 데이터 배열이 있다고 가정합니다.

var data = [{group:GroupA, label: BB}, {group:GroupB, label: DD}.....].

구속력은 다음과 같습니다.

<select data-ng-options="c as c.label group by c.group for c in data"></select>

드롭다운에 모든 항목을 나열하고 싶습니다.GroupA전에GroupB그룹별로 분류하는 것도 가능합니다.

다음과 같은 경우:

GroupA
AA
BB
CC

GroupB
DD
EE
FF

내가 그 일을 할 수 있는 건orderBy각도 필터, 하지만 그게 내가 원하는 방식대로 작동하진 않아.원하는 방식으로 수동으로 목록을 정렬하는 커스텀 필터를 작성해야 할 것 같습니다만, 작업을 수행할 수 있는 더 쉬운 방법이 없을까 생각하고 있습니다.

orderBy는, 복수의 파라메타의 배열을 사용해 순서를 지정할 수 있습니다.다음과 같은 작업을 수행할 수 있습니다.

c as c.label group by c.group for c in data | orderBy:['group','label']

여기 바이올린이 있습니다.

인 것 같다orderBy당신이 원하는 대로 작동할 겁니다.

표현식을 가지고 마지막에 orderBy를 추가합니다.

c as c.label group by c.group for c in data | orderBy:'label'

이것은 처음에 주문합니다.data각 항목의 값에 따라 배열하다label그리고 나서 그것들을 그룹화합니다.데이터가 올바르게 정렬되므로 각 그룹이 올바르게 정렬되어 표시됩니다.

여기 바이올린이 있다.

초기 배열은 역순으로 정의되지만 선택 항목의 각 그룹에서 올바르게 정렬됩니다.

언급URL : https://stackoverflow.com/questions/17075689/angularjs-ngoptions-how-to-order-by-group-name-and-then-by-label

반응형