Backbone.js 成功保存后的主干模型

Backbone.js 成功保存后的主干模型,backbone.js,Backbone.js,我有一个已成功保存的主干模型对象。但是,对象保存后服务器的响应是另一个对象(不是我正在保存的同一个对象(不是我的决定,这是我必须处理的系统)): 我想用从服务器返回的新数据更新cachedObject对象,以便在更改事件时更新视图 我怎样才能做到这一点?我要打电话吗 cachedObject.parse(response) 非常感谢您的帮助 如果我理解正确,每次模型成功与服务器同步时,您都希望使用来自服务器的数据更新客户端属性,对吗?您应该能够通过以下方式实现: 在您的模型中: initial

我有一个已成功保存的主干模型对象。但是,对象保存后服务器的响应是另一个对象(不是我正在保存的同一个对象(不是我的决定,这是我必须处理的系统)):

我想用从服务器返回的新数据更新cachedObject对象,以便在更改事件时更新视图

我怎样才能做到这一点?我要打电话吗

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);
}