我试图覆盖模型保存方法并设置错误回调。我使用localStorage和服务器端数据的混合,所以如果应用程序无法连接到服务器,我想将模型保存到本地存储。这是我的型号代码:
var Project = Backbone.Model.extend({
urlRoot: Settings.urls.projects.project,
save: function(attributes, options){
options || (options = {});
this.set("last_updated", new Date().toISOString(), {silent: true});
options.error = function(){
console.log("Error callback");
}
return this.constructor.__super__.save.apply(this, arguments);
},
如您所见,我试图在save方法中设置options.error,然后调用super方法实际执行save。由于某种原因,它忽略了该函数,并且未调用控制台日志语句。有人有什么想法吗?
答案 0 :(得分:1)
检查此参考: http://backbonejs.org/#Model-extend
你需要做这样的事情:
return Backbone.Model.prototype.save.call(this, attributes, options);