0

Backbone 0.9系からBackbone 1.0にアップグレードしたいです。

私のバックボーン アプリでは、collection.fetch() を呼び出すと、リセット イベントにバインドします。残念ながら、これは 1.0 以降では機能しません。

同様の model.set() との並列処理のために、コレクションの "update" の名前を set に変更し、reset とは対照的にしました。フェッチ後のデフォルトの更新メカニズムになりました。「reset」を引き続き使用する場合は、{reset: true} を渡します。

したがって、リセット イベントをトリガーするには、次のようにします。

this.collection.fetch({reset: true})

もう一度作業しますが、すべてのコードを調べてすべての collection.fetch() を更新する必要はありません。自動的に reset : true を渡すように collection.fetch() を構成する方法はありますか?

4

1 に答える 1

0

独自の Backbone コレクションを拡張した場合はいつでも fetch をオーバーライドできるため、常にオプションとしてそれが含まれていました。

fetch: function (options) {
    options = options ? _.clone(options) : {};
    options.reset = true;
    Backbone.Collection.prototype.fetch.call(this, options);
}

次に、フェッチを呼び出すたびに、それがオプションとして既に含まれているため、実際にフェッチ呼び出しを行う場所で変更する必要はありません。

于 2013-04-26T02:54:28.937 に答える