Marionette.js で Backbone.js を使用します (Go Derick Bailey!)。ビューがページから削除されたことを検出する必要があります。具体的には、別のビューで上書きしています。
これがいつ発生したかを検出するためにオーバーロードできる機能を検出できるイベントはありますか?
ありがとう!
Marionette.js で Backbone.js を使用します (Go Derick Bailey!)。ビューがページから削除されたことを検出する必要があります。具体的には、別のビューで上書きしています。
これがいつ発生したかを検出するためにオーバーロードできる機能を検出できるイベントはありますか?
ありがとう!
Marionette は、View.onClose
この目的のためのメソッドを提供します。
Backbone.Marionette.ItemView.extend({
onClose: function(){
// custom cleanup or closing code, here
}
});
View.remove
バニラ バックボーンでは、メソッドをオーバーライドできます。
Backbone.View.extend({
remove: function(){
// custom cleanup or closing code, here
// call the base class remove method
Backbone.View.prototype.remove.apply(this, arguments);
}
});
ビューの DOM 要素を単純に破壊するだけの場合、これらの方法はどちらも機能しません。その場合、解決策は簡単です。そうしないでください。その場所に別のビューをレンダリングする前に、以前のビューを明示的に削除してください。
地域表示機能は、探していることのほとんどを実行します
https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.region.md#basic-use
そして、ページの後半にあるオンショーイベントを見てください