sync()
在主干中创建自定义方法。
我想这样做是“正确的”,并尽可能少地干扰 Backbone 的正常功能。
这是我到目前为止的代码:
var CustomSyncModel = Backbone.Model.extend({
sync:function(method, model, options){
var params = {
type: 'POST'
url: model.url(),
error: function(jqXHR, textStatus, errorThrown){
alert('error');
},
success: function(data, textStatus, jqXHR){
model.parse(data);
}
};
// Got this from line 1359 in Backbone.js developement library
// version 0.9.2:
$.ajax(_.extend(params, options));
}
});
我遇到的问题是该行:$.ajax(_.extend(params, options));
似乎正在覆盖我创建的自定义success
和error
函数。但我也担心会干扰任何自定义回调或其他可能已在使用此模型的应用程序中指定的其他功能。
覆盖Backbone的方法的“正确”方法是sync()
什么?
谢谢!