我有这样的对象:
students = {name: 'Aa_Student', class: 'A_Class'},
{name: 'Ab_Student', class: 'A_Class'},
{name: 'Ac_Student', class: 'B_Class'},
{name: 'Ba_Student', class: 'B_Class'},
{name: 'Bb_Student', class: 'C_Class'},
{name: 'Bc_Student', class: 'C_Class'}
假设学生对象被洗牌。我使用 ng-repeat 来显示数据。我想按自定义顺序对对象进行排序。
例如,我想显示这样的数据:
Name Class
-----------------------------
Ac_Student B_Class
Ba_Student B_Class
Aa_Student A_Class
Ab_Student A_Class
Bb_Student C_Class
Bc_Student C_Class
所以基本上,我想按学生的班级排序,但首先是 B_Class,然后是 A_Class,然后是 C_Class。另外,我想按学生姓名按字母顺序排列。我怎样才能做到这一点?
HTML:
<table>
<tr ng-repeat="student in students | orderBy:customOrder">
...
</tr>
</table>
控制器:
$scope.customOrder = function(student) {
$scope.students = $filter('orderBy')(student, function() {
});
};