ho una molto semplice configurazione ...Backbone.js Sync non determina alcun evento sul modello
Un percorso è l'installazione che richiama una finestra di dialogo modale utilizzando bootstrap. Il headerView chiama un metodo quando si fa clic su un menu -
menuClick: function(e){
e.preventDefault();
if (!this.myView) {
this.myView= new MyView({model: new MyModel()});
}
this.myView.render();
},
Nel MyView chiamo legano nel inizializzare
initialize: function(){
this.model.bind('sync', function(model){ alert('test view')});
}
E chiamare Backbone.sync in un evento click del pulsante:
var response = Backbone.sync('read', this.model, {
success: function(data, textStatus, jqXHR) { alert('success'); },
error: function(data, textStatus, jqXHR){ alert(fail); }
});
L'avviso all'interno della sincronizzazione viene chiamato ... ma l'avviso nel comando di associazione nell'inizializzazione non viene mai chiamato. Provato a spostare il bind all'interno del modello, spostandolo, ho anche provato la sincronizzazione: fail, sync: done. Nessun successo.
Sovrascrivere il 'Backbone.sync' è complicato, e sembra strano chiamarlo direttamente .. Perché non usi i comandi di livello alto come' Model.fetch() '? – fguillen