小部件加载事件上的Dojo

lmyy7pcs  于 2022-12-16  发布在  Dojo
关注(0)|答案(4)|浏览(197)

我想知道Dojo表单小部件什么时候解析或准备好了,以便我可以动态地定制它。我尝试使用dojo.connect()方法来实现这一点。但是,我不确定要监听哪个事件。是onLoad还是onStartup还是..?
这是我所做的,但它没有触发:

dojo.connect(dijit.byId('myWidget'), 'onStartup', function(evt) {
   console.debug("test");
}

注意,dijit.byId('myWidget')部分正确地返回了对象,所以这不是问题所在。

hjzp0vay

hjzp0vay1#

这在某种程度上取决于您想要定制的具体内容(参见小部件生命周期here),但我猜连接到postCreate将满足您的需求

wfveoks0

wfveoks02#

回答我自己的问题,在小部件生命周期中有一个“startup”函数,所以我可以使用它来代替“onStartup”,如下所示:

dojo.connect(dijit.byId('myWidget'), 'startup', function(evt) {
   console.debug("test");
}

字符串

zkure5ic

zkure5ic3#

在我的例子中,我需要等待一个外部模板。我把它做成这样:

var myCp= registry.byId("myContentPane");
myCp.set("onDownloadEnd", function(){
    console.log("Download complete!");
});
myCp.set("href", "myHtml.html");

字符串

3z6pesqy

3z6pesqy4#

好吧,如果你用dojo.addOnLoad()函数调用 Package 代码,你应该很好。
http://dojotoolkit.org/reference-guide/dojo/addOnLoad.html

相关问题