1

我正在尝试覆盖模型保存方法并设置错误回调。我混合使用 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 方法来实际操作保存。由于某种原因,它忽略了该函数,并且没有调用控制台日志语句。有人有想法么?

4

1 回答 1

1

检查此参考: http ://backbonejs.org/#Model-extend

你需要做这样的事情:

return Backbone.Model.prototype.save.call(this, attributes, options);
于 2012-08-27T00:53:38.477 回答