我有一个定义一些默认值的类和一个定义一些默认值的子类。但是,当我创建子类的实例时,它只查看本地默认值,不会将其默认值与父类的默认值合并。有没有什么简单的方法可以做到这一点,而无需显式地将本地默认值与父默认值合并initialize
每个子类的功能?
var Inventory = Backbone.Model.extend({
defaults: {
cat: 3,
dog: 5
}
});
var ExtendedInventory = Inventory.extend({
defaults: {
rabbit: 25
}
});
var ei = new ExtendedInventory({});
console.log(ei.attributes);
这输出:
{rabbit: 25}
不是我想要的:
{cat: 3, dog: 5, rabbit: 25}
你不能那样做。你必须在子类之后这样做
_.extend(ExtendedInventory.prototype.defaults, {rabbit: 25});
将其放在模型定义之后。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)