gpt4 book ai didi

backbone.js - 简单的自引用关系模型失败

转载 作者:行者123 更新时间:2023-12-02 05:44:16 24 4
gpt4 key购买 nike

我正在评估用于建模树的 Backbone-Relational 插件。我有以下示例代码

var SurveyTreeNode = Backbone.RelationalModel.extend({
relations: [{
type: Backbone.HasMany,
key: 'questions',
relatedModel: 'SurveyTreeNode'
}]
});


var survey = {
id: 1,
questions: [
{
id: 2,
text: 'What is your name?'
},
{
id: 3,
text: 'What hours do you work?',
questions: [
{
id: 3,
text: 'On Monday?'
},
{
id: 4,
text: 'On Tuesday?'
}
]
}
]
};

var questionTree = new SurveyTreeNode(survey);

产生(在 Google Chrome 控制台中):

no model, key or relatedModel (function (){ parent.apply(this, arguments); }, "questions", undefined) 

我已将此代码加载到 jsfiddle 中,因为错误显示与上面的不完全相同(显示可以扩展的 child 元素):http://jsfiddle.net/hoffmanc/XsDQu/

最佳答案

Backbone Relational 希望能够在 relatedModel 属性中给定的路径上,在全局范围内找到相关模型的构造函数。

问题是它没有找到 SurveyTreeNode 的构造函数

我不确定您是如何在本地环境中执行上述代码的,或者 jsFiddle 究竟做了什么来包装代码(可能将其包装在某些 DOMReady 事件中),但在这两种情况下,SurveyTreeNode 都不在全局中范围。

如果您删除 SurveyTreeNode 之前的 var 关键字,它将在全局范围内可用并且后续代码有效。

请参阅此 jsFiddle:http://jsfiddle.net/edwardmsmith/qTA83/

关于backbone.js - 简单的自引用关系模型失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10504913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com