Dai un'occhiata a questo esempio di sorgente con annotazioni in cui sovrascrivono Backbone.synccon un'alternativa di archivio locale
backbone-localStorage
Fondamentalmente Backbone.sync dovrebbe essere una funzione che accetta 4 argomenti:
Backbone.sync = function(method, model, options) { };
Devi sparare options.successo a options.errorseconda che ci sia methodriuscito. I metodi sono nel formato:
"create" : previsto che si crei il modello sul server
"read" : previsto di leggere questo modello dal server e restituirlo
"update" : previsto che si aggiorni il modello sul server con l'argomento
"delete" : previsto che si elimina il modello dal server.
Devi implementare quei 4 metodi e definire quello che vuoi per il tuo "server"
Naturalmente queste sono solo le cose che Backbone.sync devono essere implementate. Puoi implementare di più methodse puoi restituire più parametri, successma è meglio non farlo.
È meglio assicurarsi che faccia lo stesso come Backbone.syncattualmente in modo che la programmazione su un'interfaccia piuttosto che un'implementazione. Se vuoi cambiare il tuo modificato Backbone.syncper dire quello localStorage non dovrai estenderlo tu stesso per abbinare il tuo Backbone.sync esteso "
[Modificare]
Si noti inoltre che è possibile utilizzare più implementazioni di sync. Ogni riferimento a Backbone.syncè assolutamente, (this.sync || Backbone.sync)quindi devi solo fare qualcosa del tipo:
var MyModel = Backbone.Model.extend({
...
"sync": myOwnSpecificSync,
...
});
Backbone.syncè solo quello globale predefinito che tutti i modelli usano a meno che i modelli non abbiano un syncmetodo specificamente impostato.