5

ビュー バインディング用のカスタム コレクション イベントを実装しようとしています。

私の見解では、次のようなことをしたいと考えています:

this.collection.on('available', this.available);

そして、どういうわけか、コレクション内のメソッドでこれをトリガーします。

コレクションに特定のモデル属性 (使用可能) を設定するメソッドがあるとします。このメソッドにバインドされているすべてのビューをトリガーするにはどうすればよいでしょうか?

これは可能で、問題のモデルを更新のためにビューに渡すことができますか?

事前に助けてくれてありがとう、どうもありがとう:)

4

1 に答える 1

7

新しいイベントをバックボーンに追加するのは非常に簡単です。triggerイベントをトリガーしたいオブジェクト のメソッドを呼び出すだけです。

たとえば、コレクションのメソッドにいて、モデル ( と呼ばれるmodel)があるとします。

this.trigger('available', model);

イベントにバインドするコードavailableは、質問で説明したとおりです。

EDIT:最近、バックボーンは、listenToビューからコレクションイベントにバインドするときに通常使用するメソッドを提供します。ビューは、remove 関数が呼び出されると、このイベントから自動的にアンバインドされます。これにより、古いビューが削除された後にコレクション イベントを受け取り続けることがなくなります。あなたの見解では、これは次のように使用できます。

this.listenTo(this.collection, 'available', this. available);
于 2012-09-19T10:30:18.700 に答える