我有一个主干模型,我在其中更改了 set 方法来计算模型每组的额外属性。
根据文档,这应该是调用 super 的方式,以确保模型确实被保存。
Backbone.Model.prototype.set.call(this, attributes, options);
除非我使用 Collection.create,否则它会按预期工作。
我的自定义设置方法得到运行,但我认为原始方法没有运行,因为集合仍然为空。
服务器接收到正确的数据并发送回正确的数据。在这两种情况下,我的方法都被执行,但集合仍然是空的。
我可以更改 super 调用以使其与 Collection.create 一起使用还是有其他方法可以完成相同的操作?
正如我所想,我错过了什么。
当重写 Model.set() 时,必须放置return this;
在最后。
所以模型应该是这样的:
var MyModel = Backbone.Model.extend({
set: function(attributes, options) {
// Custom code...
return Backbone.Model.prototype.set.call(this, attributes, options);
}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)