在Array.prototype.sort中使用AngularJS筛选器不起作用
我尝试使用过滤器返回的值对数组进行排序。调试时,我看到过滤器不返回字符串,而是在Array.prototype.sort中使用AngularJS筛选器不起作用,angularjs,angularjs-filter,angularjs-orderby,Angularjs,Angularjs Filter,Angularjs Orderby,我尝试使用过滤器返回的值对数组进行排序。调试时,我看到过滤器不返回字符串,而是TrustedValueHolderType。。。因此,这种方法不起作用 如果我使用本机的orderByFilter而不是Array.prototype.sort,我会得到同样的行为 function orderFamilies(families) { var ordered = families.sort(function(f1, f2) { // f1, f2
TrustedValueHolderType
。。。因此,这种方法不起作用
如果我使用本机的orderByFilter
而不是Array.prototype.sort
,我会得到同样的行为
function orderFamilies(families) {
var ordered = families.sort(function(f1, f2) {
// f1, f2 are strings
// translateFamilyFilter is stateless
var f1Translated = translateFamilyFilter(f1);
// var f1Translated = translateFamilyFilter(f1).toString() works but I'm not sure if it's viable
var f2Translated = translateFamilyFilter(f2);
return f1Translated - f2Translated;
});
return ordered;
}
families = [ 'Security', 'Environment', 'Professional'];
translateFamily
是一个自定义筛选器,它转换其翻译键中的姓氏,然后使用$translate.instant
(因此这里没有异步操作)
我做错了什么
谢谢发布
系列
值什么过滤器<代码>$translate?您如何使用它?使用族的内容和我的自定义过滤器进行编辑