일부 악센트가있는 문자열 목록이 있습니다. 그러나 in this JSFiddle에서 볼 수 있듯이 orderBy
필터가 제대로 작동하지 않는 것 같습니다.ngRepeat 주문이 악센트와 함께 실패합니다.
어떻게 정렬을 개선 할 수 있습니까? orderBy
에 옵션을 추가해야하나요?
일부 악센트가있는 문자열 목록이 있습니다. 그러나 in this JSFiddle에서 볼 수 있듯이 orderBy
필터가 제대로 작동하지 않는 것 같습니다.ngRepeat 주문이 악센트와 함께 실패합니다.
어떻게 정렬을 개선 할 수 있습니까? orderBy
에 옵션을 추가해야하나요?
두 문자열을 String.localeCompare()
방법으로 비교할 수 있습니다. 그것은 당신의 배열을 정렬 자신 만의 필터를 생성 한 후 쉽게 :
MyApp.filter('myOrderBy', function() {
return function (array, property, reverse) {
var result = array.sort(function (object1, object2) {
if (angular.isUndefined(property)) {
return object1.localeCompare(object2);
}
return object1[property].localeCompare(object2[property]);
});
return reverse ? result.reverse() : result;
};
});
이 필터 내부에서 정의되지 않은 함수는'objectToArray()'입니다. –
@MateusDuartePoncedeLeon 나는 훨씬 더 나은 대안을 제안하기 위해 나의 대답을 편집했다. 보세요 :)! – Blackhole
그 문제는 Javascript에서이 새로운 메서드를 처리 할 수있는 좁은 브라우저 옵션입니다. 실제로는 가독성, 성능면에서 훨씬 좋지만 기존 브라우저를 다루는 적절한 방법이 없습니다. –
, 나는 내 대답을 편집했습니다. 시도 해봐 :) ! – Blackhole