我想创建一个可使用集合属性排序的表。到目前为止,我已经能够使用两个属性使选项卡表可排序,但我希望能够基于排序键属性的值进行排序。例如,当“task_status = 'open'”
这是我现在正在工作的
var TaskCollection = Backbone.Collection.extend({
//Model
model:Task,
//url
url:"./api/tasks",
//construct
initialize: function() {
this.sort_key = 'end';
this.fetch();
},
comparator: function(a,b) {
a = a.get(this.sort_key);
b = b.get(this.sort_key);
return a > b ? 1
: a < b ? -1
: 0;
},
sort_by_status: function() {
this.sort_key = 'task_status';
this.sort();
},
sort_by_task_tag: function() {
this.sort_key = 'task_group';
this.sort();
}
});
这会对集合进行排序,但不会颠倒顺序,或者允许我按属性的特定值进行排序。如何修改它才能工作