Backbone.js 成功保存后的主干模型
我有一个已成功保存的主干模型对象。但是,对象保存后服务器的响应是另一个对象(不是我正在保存的同一个对象(不是我的决定,这是我必须处理的系统)): 我想用从服务器返回的新数据更新cachedObject对象,以便在更改事件时更新视图 我怎样才能做到这一点?我要打电话吗Backbone.js 成功保存后的主干模型,backbone.js,Backbone.js,我有一个已成功保存的主干模型对象。但是,对象保存后服务器的响应是另一个对象(不是我正在保存的同一个对象(不是我的决定,这是我必须处理的系统)): 我想用从服务器返回的新数据更新cachedObject对象,以便在更改事件时更新视图 我怎样才能做到这一点?我要打电话吗 cachedObject.parse(response) 非常感谢您的帮助 如果我理解正确,每次模型成功与服务器同步时,您都希望使用来自服务器的数据更新客户端属性,对吗?您应该能够通过以下方式实现: 在您的模型中: initial
cachedObject.parse(response)
非常感谢您的帮助 如果我理解正确,每次模型成功与服务器同步时,您都希望使用来自服务器的数据更新客户端属性,对吗?您应该能够通过以下方式实现: 在您的模型中:
initialize: function(){
this.on("sync", function(model, response, options){
this.set(response.newData);
}
}
当然,将newData
键更改为服务器用于返回所需数据的任何对象
现在,每次模型成功地与服务器同步时,它都会将其属性设置为服务器返回的内容,这将触发一个“更改”事件
在你看来,你可以
initialize: function(){
this.listenTo(model, "change", this.render);
}
每次模型更改时,视图都会自动重新渲染(这将在服务器上每次保存后发生)。谢谢,这是个好主意。我有很多嵌套数据,我必须手动解析这些数据……所以我必须调用this.set(this.parse(response));
initialize: function(){
this.listenTo(model, "change", this.render);
}