AngularJS에서 알파벳순으로 드롭 다운 정렬
서비스를 호출하는 컨트롤러에 연결된 ng-options를 사용하여 드롭 다운을 채우고 있습니다. 불행히도 들어오는 데이터는 혼란스럽고 알파벳순으로 정렬해야합니다.
당신은 무언가 $.sortBy
가 그것을 할 것이라고 생각하지만 불행히도 그것은 잭을하지 않았습니다. 도우미 메서드 function asc(a,b)
또는 이와 유사한 방법으로 자바 스크립트를 통해 정렬 할 수 있다는 것을 알고 있지만이 작업을 수행하는 더 확실한 방법이 없다고 생각하지 않으며 도우미 메서드로 컨트롤러를 부풀리고 싶지 않습니다. 그것은 원칙적으로 매우 기본적인 것이므로 AngularJS에 왜 이것이 없는지 이해할 수 없습니다.
같은 일을하는 방법이 $orderBy('asc')
있습니까?
예:
<select ng-option="items in item.$orderBy('asc')"></select>
orderBy
일반적으로 데이터 정렬을 시도 할 때마다 원하는대로 작업 할 수 있도록 옵션을 사용하는 것이 매우 유용합니다 .
Angular에는 다음과 같이 사용할 수 있는 orderBy 필터가 있습니다.
<select ng-model="selected" ng-options="f.name for f in friends | orderBy:'name'"></select>
예제는 이 바이올린 을 참조하십시오 .
track by
사용중인 경우 orderBy
필터 뒤에 다음 과 같이 표시되어야합니다.
<select ng-model="selected" ng-options="f.name for f in friends | orderBy:'name' track by f.id"></select>
필터를 사용할 수 있어야합니다. orderBy
orderBy
reverse
플래그에 대한 세 번째 옵션을 수락 할 수 있습니다 .
<select ng-option="item.name for item in items | orderBy:'name':true"></select>
여기서 항목은 'name'속성을 역순으로 정렬합니다. 두 번째 인수는 모든 순서 함수일 수 있으므로 모든 규칙에서 정렬 할 수 있습니다.
@ 참조 http://docs.angularjs.org/api/ng.filter:orderBy
var module = angular.module("example", []);
module.controller("orderByController", function ($scope) {
$scope.orderByValue = function (value) {
return value;
};
$scope.items = ["c", "b", "a"];
$scope.objList = [
{
"name": "c"
}, {
"name": "b"
}, {
"name": "a"
}];
$scope.item = "b";
});
세 번째 계층에서 변수를 정렬하려는 사람은 다음을 수행하십시오.
<select ng-option="friend.pet.name for friend in friends"></select>
당신은 이렇게 할 수 있습니다
<select ng-option="friend.pet.name for friend in friends | orderBy: 'pet.name'"></select>
참고 URL : https://stackoverflow.com/questions/12310782/sorting-dropdown-alphabetically-in-angularjs
'Programming' 카테고리의 다른 글
Composer의 개발 / 생산 스위치를 사용할 때 올바르게 배포하는 방법은 무엇입니까? (0) | 2020.06.05 |
---|---|
패턴별로 파일을 재귀 적으로 추가 (0) | 2020.06.05 |
Python에서 문자열 형식화에 여러 인수 사용 (예 : '% s… % s') (0) | 2020.06.05 |
JavaFX 응용 프로그램 아이콘 (0) | 2020.06.05 |
앱 시작시 "BatchchedBridge를 가져올 수 없습니다. 번들이 올바르게 패키지되어 있는지 확인하십시오"오류 (0) | 2020.06.05 |