使用骨干模型,假设它从服务器获取一些附加属性(如“FirstName”和“LastName”),我有如下内容:
var myModel = new Backbone.Model({ id: 10 });
var myOtherModel = new Backbone.Model({ id: 20 });
$.when(myModel.fetch(), myOtherModel.fetch()).done(function () {
console.log(myModel.toJSON());
});
输出:
{编号:10}
片刻之后的输出:
{ id: 10, FirstName: "Joe", LastName: "Schmo" }
Backbone 的承诺似乎存在缺陷,因为返回的 jqXHR 对象有一个承诺,该承诺在骨干完成自己的进程之前就已解决。
是这样吗?是否必须做其他事情来确保在完成fetch()
所有 Backbone 的set
s 或至少set
s 发生在我附加的处理程序之前不会解决返回的承诺?