1

Backbone.WreqrEventAggregatorのドキュメントを読んでいます。以下のように使えます。

MyApp.vent.trigger("some:namespaced:event");

MyApp.vent.on("some:namespaced:event", function(){
  // ...
});

ビュー内にハンドラーを設定したら、それを削除する必要があるのか​​ 、それともマリオネットがonCloseメソッドまたは他の場所でそれを行うのか理解できませんか? 削除する必要がある場合、どのような方法をとればよいでしょうか? offそのイベントだけに必要ですか?Commandsを使用する場合も同じremoveHandlerですか?

正しい方向に私を向けることができますか?

4

1 に答える 1

3

それはあなたの状況によって異なります。モジュールが動作しないときにイベントをリッスンしたくない場合は、モジュールの「停止」イベントをサブスクライブし、必要なすべてのイベントに対して off を実行できます。

module.on("stop", function(){
  App.vent.off(someMethods);
});

いつものように、view はグローバル イベント集約を使用しません。しかし、使用する場合は、使用する必要があります

this.listenTo( App.vent, "someEvent", function(){...} )

次に、Marionette がこのハンドラーを削除します。

于 2013-10-21T09:51:44.717 に答える