は、ここに私のコレクションビューの例です:最初の実行時にBACKBONE.JSコレクションこの混乱をバインド
mod.AppListView = Backbone.View.extend({
initialize: function() {
var self = this
mod.collection.bind('add', self.addOne);
mod.collection.bind('reset', self.addAll);
_.bindAll(self, 'addOne', 'addAll');
this.addAll();
},
events: {
},
addOne: function(myModel) {
var view = new ListItemView({
model: myModel
});
},
addAll: function() {
mod.collection.each(this.addOne);
},
});
これが正常に動作します。しかしその後のリセットでは、addAllはビューではなくコレクションになり、したがってaddOneは機能しません。
私がしなければならなかった、この修正するには:
mod.collection.bind('reset', self.addAll, this);
をしかし、私はそれが_.bindAllのポイントだと思いましたか?これをビューに設定してはいけませんか?これは説明できますか?この点がコレクションではなくビューに常に向くようにする方法はありますか?
ありがとうございました。