ビューの1つは、ウィンドウのサイズ変更イベントをリッスンする必要があるため、delegateEventsとundelegateEventsをオーバーライドして、そのリスナーをバインド/アンバインドしようとしています。
ビュークラスに、私はこれを置きました:
delegateEvents: =>
$(window).on 'resize',@windowResized
super
undelegateEvents: =>
$(window).off 'resize',@windowResized
super
しかし、どういうわけか、これにより、ビューがインスタンス化されるとすぐにundelegateEventsがdelegateEventsによって呼び出されます。これは、エラーケースを処理する方法であると思います。なぜこれが機能しないのでしょうか。また、私がやろうとしていることを行う正しい方法は何ですか。
編集:
結局のところ、問題はdelegateEventsのオーバーライドに関係していないようです。カスタムdelegateEventsメソッドがコメントアウトされている場合でも、undelegateEventsはすぐに呼び出されます。なぜこれができるのでしょうか?
編集2:
ミックスにさらに奇妙さを加えるために、undelegateEventsが呼び出された後でも、eventsプロパティで定義された他のイベントは引き続き機能します。