我想在视图渲染时触发骨干事件。理想情况下,我会写这样的东西:
var DetailView = Backbone.View.extend({
id: 'detailpage',
events: {
'ready document': '_bringSlideDown',
'click .close-slideDown': '_closeSlideDown'
},
我可以在视图加载完成后创建并调用_bringSlideDown
函数。这不起作用 - 是否有更好的方法来调用此事件?
具体来说,我希望事件只运行一次,这就是为什么我没有将它嵌套在render函数中。我希望视图能够多次渲染,但希望在取消绑定之前使用Backbone的.off()
方法处理此事件一次。谢谢!
答案 0 :(得分:2)
我想提到三点。
我会做这样的事情:
var YourView = Backbone.View.extend({
_rendered : false,
events : {
'click .close-slideDown': '_closeSlideDown'
},
render: function(){
//some render stuff
if( !this._rendered ){
this._rendered = true;
this._bringSlideDown();
}
}
});
基本上