我有一些带有一些重音的字符串列表。但orderBy
过滤器似乎无法正常使用它们,因为您可以看到in this JSFiddle。
如何改善排序?我是否需要在orderBy
中添加选项?
答案 0 :(得分:0)
您可以使用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;
};
});