我在Backbone.Collection中定义了比较器。
当我将模型添加到该集合时,我应该调用sort方法吗?
this.collection.add(this.newModel);
this.collection.sort(); // should I add this line?
根据文档没有,但我的应用程序似乎需要它。任何想法?
我添加了jsfiddle ..但我还有另外一个问题......任何想法如何修复它?
答案 0 :(得分:1)
不,从比较器功能返回对象时使用负号。这是对元素进行排序的另一种方法。
//Model
comparator: function(activity){
var date = new Date(activity.get('created_at'));
return -date.getTime();
}
//View
events : {
'click .refresh' : 'refresh',
'click .reverse' : 'reverse'
},
refresh : function() {
this.collection.fetch();
console.log('refresh', this.collection);
this.render();
},
reverse : function() {
var $ref = $(".notifyRefresh");
console.log("you clicked reverse");
console.log(this.collection, "collection");
this.collection.sort();
}
答案 1 :(得分:1)