【发布时间】:2017-01-02 04:07:00
【问题描述】:
过滤器
app.filter('orderObjectBy', function() {
return function(items, field, reverse) {
var filtered = [];
angular.forEach(items, function(item) {
filtered.push(item);
});
filtered.sort(function (a, b) {
return (a[field] > b[field] ? 1 : -1);
});
if(reverse) filtered.reverse();
return filtered;
};
});
数据 JSON:
{
"results": {
"100": {
"numbers": {
"1": {
"key": "value"
},
"2": {
"key": "value"
},
"3": {
"key": "value"
}
}
},
"200": {
"numbers": {
"1": {
"key": "value"
},
"2": {
"key": "value"
},
"3": {
"key": "value"
}
}
}
}
}
渲染:
<div ng-repeat="(k,v) in results">
<span ng-repeat="(k1,v1) in v | orderObjectBy:k1:true">{{k1}}</span>
</div>
orderObjectBy:k1:true 不返回“键”,而是返回键的数组,例如0 1 2。我该如何解决这个问题并颠倒顺序?
【问题讨论】:
-
您可以直接使用angular中可用的反向过滤器。
-
@ShankarShastri 请查看问题中的更新。提前致谢。 :)
标签: javascript angularjs