Klein simpel vraagje;
Code:
<script>
require([
"dijit/layout/TabContainer",
"dijit/layout/ContentPane",
"dojo/dom",
"dijit/form/Button",
"dojo/dom-construct",
"dojo/on",
"dojo/topic",
"dojo/domReady!"],
function(TabContainer, ContentPane, dom, Button, domConstruct, on, topic){
//container, pane en button aanmaken
var tc = new TabContainer({
style: "height: 100%; width: 100%;"
}, "dojo");
var cp1 = new ContentPane({
title: "Maintab"
});
var btn = new Button({
innerHTML: "New tab"
});
// alle elementen toevoegen
tc.addChild(cp1);
cp1.addChild(btn);
tc.startup();
// klikevent koppelen aan button
on(btn, "click", function(){
topic.publish("createTab");
});
topic.subscribe("createTab", function(){
var cpx = new ContentPane({
title: "Subtab"
});
var btn = new Button({
innerHTML: "New tab"
});
on(btn, "click", function(){
topic.publish("createTab");
});
cpx.addChild(btn);
tc.addChild(cpx);
});
});
</script>
Ik ben nog maar pas met dojo begonnen, en ik zit met een vraag.
Het is gewoon om dojo wat te leren kennen; er is een tabcontainer, met een button, en als je klikt op de button verschijnt er een nieuwe tab met een button om om weer een nieuwe tab te maken, enzo...
Nu, mijn vraag is, waarom moet ik het event 2 keer koppelen aan mijn button? Ik moet twee keer
Code:
on(btn, "click", function(){
topic.publish("createTab");
});
doen, waarom?
Kan ik niet gewoon eenmaal het event koppelen aan mijn btn? Nu moet ik dit dus 2 keer doen....