我的观点之一应该是监听窗口调整大小事件,所以我试图覆盖 delegateEvents 和 undelegateEvents 来绑定/取消绑定该监听器。
在视图类中,我放了这个:
delegateEvents: =>
$(window).on 'resize',@windowResized
super
undelegateEvents: =>
$(window).off 'resize',@windowResized
super
但是不知何故,这会导致一旦视图被实例化,就会立即被 delegateEvents 调用 undelegateEvents,我认为这是它处理某些错误情况的方式。为什么这不起作用,做我想做的事情的正确方法是什么?
编辑:
看起来问题可能与重写 delegateEvents 无关。即使自定义的 delegateEvents 方法被注释掉,undelegateEvents 也会被立即调用。为什么会这样?
编辑2:
为了给混合添加更多奇怪的东西,即使在调用了 undelegateEvents 之后,在 events 属性中定义的其他事件也会继续工作。