2012-03-08 5 views

答えて

3

これらは両方ともサーバーにデータを同期するタスクに関連していますが、2つの間には接続はありません。

Backbone.syncは、Backbone.jsアプリケーションで利用される持続戦略を実装しています。データの保存方法を変更する必要がある場合は、デフォルトの実装を上書きすることをお奨めします。ほとんどの人はこれについて心配する必要はありませんが、あなたがこれを行う必要がある場合は、チェックアウトすることができますHow to override Backbone.sync?

同期eventは、モデルへの更新がサーバと正常に同期されたことを示します。他のモデルイベントと同様に、コレクションにもバブルアップします。これは、次の場合に発生します。

  • 成功したモデルはsavingです。
  • 成功destroyingモデル。
  • 正常にcreatingコレクションのモデル。

:v0.9.9以前は、同期イベントはを発射することが保証されませんでした - あなたはこれらの操作のいずれかの間に、成功コールバックを宣言した場合、同期イベントがトリガされません。

+0

これはバックボーンの特に脆弱な部分です。ドキュメント内のどこにも「同期」が発生しないかもしれないと言われていますが、あなたは完全に正しいです、Brad - 独自の応答ハンドラを設定してトリガを無視する(「同期」)ことは簡単です。私は他の誰かが書いたリクエストフレームワークで作業していますが、これが省略されたことを理解するのに1時間かかりました。 – ericsoco

+0

「これらの操作のいずれかで成功コールバックを宣言すると、同期イベントはトリガーされません」という正確さがわかりません。ソースhttp://backbonejs.org/docs/backbone.html#section-60を見ると、successコールバックは同期をトリガーするコールバックにラップされます。 –

+1

あなたが正しいように見えます。この動作は、Backbone 0.9.9で[変更されました](http://backbonejs.org/#changelog)でした。 –

関連する問題