【发布时间】:2021-01-16 23:55:20
【问题描述】:
我想按照以下条件对数据进行排序:
-
按
type排序,优先级为[州、市、区]。-state 类型的数据应该放在第一位,然后是 city 的数据等等。
-
重复数据应按
score排序。-eg : 如果 3 行有类型,则按分数排序。
我的数据对象是:
$scope.data = [{
id: 1,
name: 'ABC',
type: 'city',
score: 0.1
}, {
id: 2,
name: 'PQR',
type: 'city',
score: 0.7
}, {
id: 3,
name: 'ABC',
type: 'state',
score: 0.3
});
模板是:
<div ng-repeat="d in data">
<span>{{d.name}}</span>
<span>{{d.type}}</span>
<span>{{d.score}}</span>
</div>
结果应该是这样的:
ABC state 0.3
PQR city 0.7
ABC city 0.1
Here是plunker的链接。
我想按多个字段以及特定的优先级对其进行排序。
任何帮助将不胜感激。提前致谢。
【问题讨论】:
-
Stack Overflow不是免费的代码编写服务。您应该尝试自己编写代码。在doing more research 之后,如果您有问题,您可以发布您尝试过的内容,清楚地解释什么不起作用,并提供一个minimal reproducible example 。我建议阅读How to Ask 一个好问题和the perfect question。另外,请务必使用tour。
-
我尝试使用循环对其进行排序。但这似乎不是更好的方法。我想要一种有效的方法。
-
我必须按具有特定优先级的多个字段对其进行排序。它应该以这种方式按
type排序:state, city, district。 -
Kiran 看起来你对这个问题有一个非常清晰的认识。您究竟在哪里遇到了解决问题?
标签: javascript angularjs angularjs-ng-repeat