Backbone.js バージョン 0.9.2 のソース コードを調べると、
"_onModelEvent":
このメソッドは、モデルからコレクションへのイベントの転送 (バブルアップ) を担当します。
したがって、コレクションの一部であるモデルで何かを変更すると (「set」を使用)、change イベントが発生します。(add メソッドで) _onModelEvent メソッドがモデル (「all」) にバインドされているため、これはメソッドが呼び出されます。
また、「destroy」イベントをトリガーする destroy メソッドがあることもわかります。
しかし、作成者 (_onModelEvent の最初の行) は、イベント名が「追加」または「削除」であるかどうかを確認するのはなぜですか。通常、モデルに「追加」イベントはありませんか?
ぜんぜんわかりません。
誰か説明してくれませんか?
前もって感謝します
_onModelEvent: function(event, model, collection, options) {
if ((event == 'add' || event == 'remove') && collection != this) return;