Bjo*_*orn 6 javascript backbone.js
我的网络应用程序中有拖放功能.当用户在拖放后释放鼠标时,对象的位置将使用模型上的Backbone的save()方法保存到服务器.当服务器响应时,它会触发模型上带有返回属性的set().但是,在服务器处理请求的时间内,用户可能已经再次将对象拖动到其他位置.这会导致问题,因为来自服务器的响应现在将覆盖浏览器中对象的设置.
有没有办法防止Backbone在save()之后从服务器获得响应后执行set()?
我现在使用以下解决方案:
覆盖模型的默认解析方法:
Backbone.Model.prototype.parse = function(resp, options) {
if(options.parse)
return resp;
};
Run Code Online (Sandbox Code Playgroud)
现在,您可以使用 save 方法并将属性“parse”设置为 false,以防止 ajax 响应覆盖您当前的值:
MyModel.save({}, { parse: false });
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3088 次 |
| 最近记录: |