我正在使用 dojo 框架在 JavaScript 中构建一个 Web 应用程序。我想在运行时创建新选项卡(我有一个 TabPane 并添加 ContentPanes)并想在该窗格中创建数据网格。(特别是 LazyTreeGrids,但它们扩展了数据网格类,所以它应该是相同的)
当我这样做时,我得到了几个错误:
ReferenceError
../dojo-release-1.7.2-src/dojo/_base/Deferred.js:216
Error parsing in _ContentSetter#Setter_dijit_layout_ContentPane_0_0
ReferenceError
../dojo-release-1.7.2-src/dijit/layout/ContentPane.js:543
Error undefined running custom onLoad code: This deferred has already been resolved
当我在没有数据网格的情况下运行 TabPane 时,或者如果我在没有 TabPane 的情况下运行数据网格(并且在页面加载时),它工作得很好。你有什么想法可以解决我的问题吗?
相关代码:
dojo.ready(function(){
var tabPanel = new dijit.layout.TabContainer({
style: "height: 100%; width: 100%;"
}, "mainWindow");
//console.error("tset");
var console = new contentPane.console("test");
var cp1 = new dojox.layout.ContentPane({
title: "HomeScreen",
content: ""
});
tabPanel.addChild(cp1);
var cp2 = new dojox.layout.ContentPane({
title: "+",
content: ""
});
tabPanel.addChild(cp2);
tabPanel.startup();
require(["dojo/dom-attr"], function(domAttr){
domAttr.set(cp1, "content", console.getContent() );
});
});