所以我使用 Dojo 1.7 'require'语法来启动两个模块。但是,调用这些模块的顺序很重要,因为一个模块可以处理另一个模块的结果。
我不能只是在程序上将它们排除在外......我如何确保它们按顺序发射?
require(['modules/createElements', 'dojo/domReady!'],
function(createElements) {
createElements.go();
});
require(['modules/modifyElements', 'dojo/domReady!'],
function(modifyElements) {
// This is supposed to modify the elements created
// by the createElements module, but it usually fires
// _before_ the elements have been created!
modifyElements.go();
});
理想情况下,我希望这两个模块或多或少地相互独立(例如,以便modifyElements
可以对任何源创建的元素起作用),因此最后调用modifyElements
createElements
是不可取的。
答案 0 :(得分:0)
啊哈,我在发布这篇文章后意识到我可以在一个require
内完成我的所有工作,如下所示:
require(['modules/createElements', 'modules/modifyElements', 'dojo/domReady!'],
function(createElements, modifyElements) {
createElements.go();
modifyElements.go();
});