我正在开发一个 Backbone 应用程序。我创建了具有销毁方法的基本视图,所有其他视图都对其进行了扩展。
销毁视图实例时,我想确保如果视图具有模型或集合,我将解除绑定它正在侦听的任何事件。
假设我在视图的初始化中使用下划线的 _.bindAll,下面的 off 语句是否会删除引用。
var DocumentRow = Backbone.View.extend({
initialize: function() {
_.bindAll( this );
this.model.on('change', this.render);
},
destroy : function() {
// Will this work?
this.model.off(null, null, this);
}
});
还是我需要像这样显式绑定事件
this.model.on('change', this.render, this);