Épine dorsale chercher le succès de rappel
Je suis nouveau sur backbone.js et je vais avoir quelques problèmes avec donner ma collection un succès de rappel. Je suis primordial d'extraction afin d'avoir une url avec un paramètre. Si je comprends bien, je devrais être en mesure d'attribuer un succès de rappel dans les options je passe à la colonne vertébrale.Collection.le prototype.fetch.call()... mais, mon code ne fonctionne pas. Fetch fonctionne correctement, mais la fonction de rappel n'est pas appelé.
Ici est un peu mon code:
App.ChartController = {
load: function(userConceptId) {
App.chartPointList.fetch(userConceptId);
}
};
App.ChartPointList = Backbone.Collection.extend({
model: App.ChartPoint,
url: function() {
return '/chartpoints/' + this.userConceptId;
},
fetch: function(userConceptId, options) {
console.log("fetch chart point");
typeof(options) != 'undefined' || (options = {});
options.success = this.postProcess;
options.error = this.handleError;
this.userConceptId = userConceptId;
return Backbone.Collection.prototype.fetch.call(this, options);
},
postProcess : function (resp, status, xhr) {
console.log("postprocess"); //never gets called
/**
... whole bunch of stuff...
**/
new App.Views.ChartView({ collection: this });
},
handleError : function (resp, status, xhr) {
alert("could not load chart data!"); //also not called
}
});
Une idée de ce que je fais mal? Merci!
Le erreur de rappel fonctionne pour moi: jsfiddle.net/fguillen/vsZUD , de sorte que le problème doit être ailleurs.
OriginalL'auteur fdot | 2012-06-04
Vous devez vous connecter pour publier un commentaire.
@fguillen commentaire et un autre fil m'a aidé à comprendre cela. Plus précisément:
Le problème n'était pas avec mon succès rappel à tous. S'avère que j'avais un problème de vue qui a été souscrit à l'ChartPointList événement de réinitialisation. Une fonction de ce point de vue a été appelé avant le succès de rappel et de lancer une erreur, et donc le succès de rappel n'a pas été appelé.
OriginalL'auteur fdot