我一直在尝试遵循此处的示例:使用主干JS + 主干关系+ requireJS 创建嵌套模型
最后得到了一些不同的东西(因为我需要一个 Backbone.Collection,而不是 Backbone.RelationalModel):
define(['exports', 'backbone', 'backbone.relational'], function (Exports, Backbone) {
var ModuleModel = Backbone.RelationalModel.extend({
relations : [{
type : Backbone.HasMany,
key : "children",
relatedModel : 'ModuleModel',
collectionType : 'ModuleCollection'
}]
});
Exports.ModuleModel = ModuleModel;
return ModuleModel;
});
define(['exports', 'backbone'], function(Exports, Backbone) {
var ModuleCollection = Backbone.Collection.extend({
model : Exports.ModuleModel,
});
Exports.ModuleCollection = ModuleCollection;
return ModuleCollection;
});
但是,当我这样做时:
var modules = new ModuleCollection();
modules.fetch();
我得到:
TypeError: this.model is undefined
这很明显,因为 Exports.ModuleModel 是在 ModuleCollection初始化之后创建的。
关于如何实现这种自我参照模型的任何提示?
提前致谢!