私はBackbone.syncをオーバーライドしたいと思いますが、私の追加後も元のBackbone.sync機能を実行しています。私は、Javaのスーパークラスでsuperを呼び出すようなものだと思います。以前のコードをすべてコピーする以外にこれを行う方法はありますか?Backbone.syncをオーバーライドしますが、以前の機能を保存します
10
A
答えて
15
JavaScriptでは、任意のプロパティまたはメソッドを変数に格納できます。次の例では、Backbone.syncを別の変数に割り当て、関数の最後に新しいBackbone.sync関数に渡されるすべての変数を呼び出します。上記のブライアン・ニッケルによって提供さ
var originalSync = Backbone.sync;
Backbone.sync = function() {
// Your code here.
return originalSync.apply(Backbone, arguments);
};
6
answerは、実際には、すべてのバックボーンモデルに影響を与えるであろう、バックボーンのsync
メソッドをオーバーライドします。詳細な情報について
var YourModel = Backbone.Model.extend({
sync: function(method, model, options) {
// do your custom work here
return Backbone.Model.prototype.sync.call(this, method, model, options);
}
});
:何を念頭に置いていたことは、個々のモデルタイプのためsync
を上書きする場合は、(もthe Backbone docsからの正しい署名でsync
を上書きすることを確認すること)の代わりに、次のパターンを好むかもしれませんどのように動作するかは、Backbone's annotated sourceを参照してください。希望が役立ちます。
関連する問題
- 1. Backbone.syncをオーバーライド
- 2. firebaseクラウド機能は "__session"以外の名前のクッキーを保存しません
- 3. エレクトーンは以前のズームをどこに保存しますか?
- 4. JMeterは以前のドロップダウンの値を保存しません
- 5. 以前の値を保存して新しい値と照合します
- 6. 既存のエンティティを拡張して追加機能と削除機能をオーバーライドします
- 7. 更新されたフィールドの以前の値を自動的に保存するモデル保存メソッドをオーバーライドします
- 8. Matlab:以前に保存した図を開き、次のように保存します。
- 9. Wordpress Widgetのオプションの保存が機能しません
- 10. ループバック保存イベントを「保存前」操作でキャンセルします
- 11. ループが機能しておらず、アウトプットを保存しています
- 12. 保存した画像がsdカードの前の画像をオーバーライドしています
- 13. Firebase Firestoreのデータ保存が機能していませんIOS
- 14. フォームから値を保存しても機能しません
- 15. PHPは以前のファイルアップロード情報をユーザーアカウントで保存しています
- 16. Laravel - 接続をオーバーライドしますが、モデルは以前の接続からのデータを返します
- 17. 保存機能がexpressjs mongooseで動作しません
- 18. Laravel 5保存と更新が機能しません。
- 19. tensorflow 0.9 skflow model保存と復元が機能しません
- 20. 保存機能
- 21. YouTubeのレジューム再生機能をオーバーライドしますか?
- 22. DateTimePickerの矢印キー機能をオーバーライドしますか?
- 23. オーバーライド、オーバーライド機能
- 24. ユーザーがテキストを編集して以前のバージョンを保存する
- 25. ページングのページ変更を保存しても機能しません。値は保存されません
- 26. 以前に安定した機能でreallocがクラッシュする
- 27. ジャンゴ:Updateまたは以前に保存したモデルデータを変更し
- 28. djangoインポートエクスポートのオーバーライドが機能しない
- 29. RXJavaは以前のflatMapの戻り値を保持します
- 30. Djangoオーバーライドされた保存関数は親フィールドを保存しません
完璧!ありがとう。 – kreek