programing

2개의 필드(하나는 역방향)로 정렬

powerit 2023. 3. 29. 21:59
반응형

2개의 필드(하나는 역방향)로 정렬

상태별(온라인 최초, 오프라인 지속)과 알파벳 순으로 친구 목록을 주문하고 싶습니다.내가 얻을 수 있는 건

  • 온라인 퍼스트 / 알파벳 역순
  • 또는 오프라인 퍼스트 / 알파벳 순서

여기 내 문제를 폭로할 수 있는 좋은 방법이 있다.

를 변경하다orderBy필터 처리:

orderBy:['-status','name']

이 순서는 상태 내림차순(프리픽스를 붙임)에 따라 오더됩니다.-character) 다음으로 오름차순 이름을 지정합니다.현재 합격 중입니다.true정렬을 반대로 하면 상태가 올바르지만(먼저 표시), 이름이 반대로 됩니다(내림).

역부울을 유지하려면orderBy:['status','-name']:true하지만 그건 단지 우리가 이 일을 하는 것보다status내림차순입니다.

이를 위한 다른 옵션이 있습니다.ng-repeat 및 그 행에 orderBy 필터를 여러 개 지정할 수 있습니다.

<li class="friend" ng-repeat="friend in friends | orderBy:['status','name']:true">

다음과 같습니다.

<li class="friend" ng-repeat="friend in friends | orderBy:'name':false | orderBy:'status':true">

마지막 orderBy는 처음 실행되며 두 번째 orderBy는 마지막 순서로 실행됩니다.

여기 제 plunkr가 있습니다.http://plnkr.co/edit/girPFzdi3Zx0yp0ASGVQ?p=preview

Angular 1.5.8에서는 이전 예가 작동하지 않습니다.다른 논리를 적용해야 합니다.

이전 orderBy의 로직이 다음 orderBy에 적용되어 있기 때문에 이름 ASC와 상태 DESC의 이름을 정렬하려면 다음 순서를 따라야 합니다.

<li class="friend" ng-repeat="friend in friends | orderBy:'name':true | orderBy:'status':true">

다음으로 고정 예를 제시하겠습니다.http://plnkr.co/edit/0ZFIftSgNkU9F03xJztG?p=preview

언급URL : https://stackoverflow.com/questions/20290238/orderby-two-fields-one-in-reverse

반응형