backbone.relational ソース コードを解読しようとしています。多くの独自のイベントが発生することがわかりました。いくつかのモデルでログオンを行ったところ、これらのイベントの多くが理由もなく発生しているように見えることがわかりました。
大きな問題は、どのイベントをリッスンする必要があり、どれが内部イベントかということです
Backbone.Relational が起動するように見えるイベントは次のとおりです。
- update:[attribute] が起動するようです [725、941 行目]
- リレーショナル:追加 これは、コレクションで .add() が呼び出されたときに発生するようです
- relational:remove コレクションで .remove() が呼び出されたときに発生するようです [1651, 1003]
- relationshipal:reset これには韻も理由もないようです (なぜソート時に解雇されるのですか!!!) [1664, 1675]
- リレーショナル:変更:[属性]: これが何をするかわからない [1138]
誰かがそれぞれの目的と、トリガーの一部をソースから削除できるかどうかを説明できますか
比較のために、バックボーンのネイティブ イベント:
- 「追加」 (モデル、コレクション、オプション) — モデルがコレクションに追加されたとき。
- 「削除」 (モデル、コレクション、オプション) — モデルがコレクションから削除されたとき。
- 「リセット」 (コレクション、オプション) — コレクションの内容全体が置き換えられたとき。
- "sort" (コレクション、オプション) — コレクションが再ソートされたとき。
- 「変更」 (モデル、オプション) — モデルの属性が変更されたとき。
- "change:[属性]" (モデル、値、オプション) — 特定の属性が更新されたとき。
- "destroy" (モデル、コレクション、オプション) — モデルが破棄されたとき。
- "request" (モデル、xhr、オプション) — モデル (またはコレクション) がサーバーへのリクエストを開始したとき。
- "sync" (モデル、応答、オプション) — モデル (またはコレクション) がサーバーと正常に同期されたとき。
- "error" (モデル、xhr、オプション) — サーバーでモデルの保存呼び出しが失敗した場合。
- 「無効」 (モデル、エラー、オプション) — モデルの検証がクライアントで失敗した場合。
- "route:[name]" (params) — 特定のルートが一致したときにルーターによって起動されます。
- "route" (router, route, params) — いずれかのルートが一致したときに履歴 (またはルーター) によって起動されます。
- "all" — この特別なイベントは、トリガーされたイベントに対して発生し、イベント名を最初の引数として渡します。