Погляньте на цей примітка з примітками, де вони Backbone.syncзаміщені, з альтернативою локального зберігання
магістраль-локальний сховище
В основному Backbone.sync має бути функцією, яка бере 4 аргументи:
Backbone.sync = function(method, model, options) { };
Стріляти потрібно options.successабо options.errorзалежно від того, чи methodвдалося це зробити. Методи у форматі:
"create" : очікується, що ви створите модель на сервері
"read" : очікується, що ви прочитаєте цю модель з сервера та повернете її
"update" : очікується, що ви оновите модель на сервері з аргументом
"delete" : очікується, що ви видалите модель з сервера.
Вам потрібно реалізувати ці 4 методи та визначити все, що ви хочете для свого "server"
Звичайно, це лише ті речі, які Backbone.sync треба реалізувати. Ви можете впроваджувати більше, methodsі ви можете передавати більше параметрів назад, successале краще цього не робити.
Найкраще переконатися, що він працює так само, як Backbone.syncі в даний час, щоб ваше програмування в інтерфейсі, а не реалізація. Якщо ви хочете вимкнути свою модифіковану Backbone.syncдля скажімо локальну сховище, вам не доведеться самостійно розширювати її, щоб відповідати розширеній Backbone.sync "
[Редагувати]
Також зауважте, що ви можете використовувати кілька реалізацій sync. Кожна посилання на Backbone.syncнього точно, (this.sync || Backbone.sync)тому вам просто потрібно зробити щось на кшталт:
var MyModel = Backbone.Model.extend({
...
"sync": myOwnSpecificSync,
...
});
Backbone.sync- це лише глобальний стандарт за замовчуванням, який використовують усі моделі, за винятком випадків, коли для моделей визначений syncметод.