作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我的 backbone.js
应用程序中有一个自定义的 sync
方法。我的所有模型都调用此方法,但由于我在此方法中覆盖了 success
,因此不再调用来自各个模型的成功方法。这就是我的意思 - 下面是我的自定义同步方法:
app.customSync = function(method, model, options) {
var success = options.success,
error = options.error,
customSuccess = function(resp, status, xhr) {
//call original, trigger custom event
if(con)console.log('in custom success');
success(resp, status, xhr);
},
customError = function(resp, status, xhr) {
if(con)console.log('in custom error');
error(resp, status, xhr);
};
options.success = customSuccess;
options.error = customError;
Backbone.sync(method, model, options);
};
Backbone.Model.prototype.sync = app.customSync;
这是我尝试从模型保存中调用成功的示例:
this.model.save({
success:function(model, response){
if(con)console.log('this is never called');
}
});
有谁知道我如何仍然可以与自定义成功方法进行自定义同步,并从我的个人保存中调用成功?
作为旁注,我尝试在 model.save
中调用 success
msuccess
,但是 msuccess
在自定义同步中未定义。
最佳答案
Model.save 的第一个参数是您希望修改的属性的散列,选项排在第二位并保存成功/错误回调。
尝试
this.model.save({}, {
success: function() {
console.log('save success');
}
});
还有一个 fiddle 在工作中看到这个 http://jsfiddle.net/nikoshr/XwfTB/
关于javascript - Backbone : calling a success with a custom sync method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16151206/
我是一名优秀的程序员,十分优秀!