我正在学习Dojo Toolkit,我正在努力将dijit添加到dijit中。有类似的帖子,但使用了DIV。我只想通过编程将按钮或其他任何东西插入到ContentPane中,如下所示:
我有一个脚本(与所需项目插入按钮):
require(["dijit/layout/AccordionContainer", "dijit/layout/ContentPane", "dojo/domReady!", "dijit/form/Button", "dijit/_WidgetBase"],
function(AccordionContainer, ContentPane, Button){
var aContainer = new AccordionContainer({style:"height: 300px"}, "markup");
var aChild1 = new ContentPane({
title: "Date selectors",
content: "Test"
});
var aChild2 = new ContentPane({
title:"Group 2",
content:"Test"
});
var aChild3 = new ContentPane({
title:"Group 3",
content:"Test"
});
aContainer.addChild(aChild1);
aContainer.addChild(aChild2);
aContainer.addChild(aChild3);
aContainer.startup();
});
我的DIV很简单:
<div id="markup" style="width: 250px; height: 300px">
这个ContentPane应该作为左工具栏与滚动窗格工作。在第一个我想添加日期选择器或按钮或其他任何东西。以上代码工作,直到我尝试添加subChild。我尝试创建变量与按钮,使其成为一个内容窗格的孩子,如:
var btn as new Button([...]);
并将其放置在此处:
aContainer.addChild(aChild1);
aChild1.addChild(btn);
aContainer.addChild(aChild2);
aContainer.addChild(aChild3);
aContainer.startup();
但是它不起作用。在这种情况下我怎么建立我的布局呢?提前感谢你的帮助。
1条答案
按热度按时间5kgi1eie1#
问题解决了。我应用了声明式而不是程序式的创建:在脚本中,我只添加了这一行:
然后我写了一些div像:
一些文本
我发现了一个提示(在演示代码内):
内容窗格没有子窗格,所以只需使用dojo的内置after advice dojo.connect(dijit. layout. ContentPane. prototype,"resize",function(mb)...所以我所要做的就是:
如果您想了解如何将任何布局项放在一个位置,请参见Dojo Theme Tester(查看源代码):https://download.dojotoolkit.org/release-1.7.0/dojo-release-1.7.0/dijit/themes/themeTester.html?theme=tundra
你会发现每一个片段都描述得很好。对我来说,它比文档更有用。
我希望通过解决我的问题,这个解决方案会对某人有所帮助。