Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Dojo按顺序需要一组模块的正确方法_Javascript_Dojo_Amd - Fatal编程技术网

Javascript 使用Dojo按顺序需要一组模块的正确方法

Javascript 使用Dojo按顺序需要一组模块的正确方法,javascript,dojo,amd,Javascript,Dojo,Amd,我正在使用dojo来模块化我的应用程序 有一个JSON配置文件,指定在数组中加载哪些模块 我不确定如何将其应用于Dojo的require库,因为它是异步的,语法有点奇怪 有没有办法分批完成?或者我必须为每个文件调用一个新的declare 有没有办法对加载的模块强制下订单?我真的需要这个命令得到尊重,或者至少在以后恢复和命令 这是我开始使用的一个示例,但在我看来并不正确是的,我使用的是AMD版本: 也许有办法强制它同步加载?但我想这不值得推荐 files = ["fileone","filetwo

我正在使用dojo来模块化我的应用程序

有一个JSON配置文件,指定在数组中加载哪些模块

我不确定如何将其应用于Dojo的require库,因为它是异步的,语法有点奇怪

有没有办法分批完成?或者我必须为每个文件调用一个新的declare

有没有办法对加载的模块强制下订单?我真的需要这个命令得到尊重,或者至少在以后恢复和命令

这是我开始使用的一个示例,但在我看来并不正确是的,我使用的是AMD版本:

也许有办法强制它同步加载?但我想这不值得推荐

files = ["fileone","filetwo","filethree"] //this would be loaded from a config file

files.forEach((item,i) => {
    dojo.require(item, function(module){
        console.log(module)
    }
})

您可以执行以下操作:在您的模块中,外部需求可以替换为定义:

要求[ 要求 /*,dojo/text!path/to/config.json*/ ],functionrequire/*,config*/{ var files=[dojo/dom,dojo/_base/declare];//将其替换为配置中的数组 //可能需要JSON.parseconfig 需求、功能{ console.logAll-in-one-require; console.logarguments; }; files.forEachfunctionfile,i{ 需要[文件],功能模块{ console.logForEach:模块nr+i; 控制台模块; }; }; };
我认为这是一个很好的开始,你所做的一切,只是想制作一个包含所有引用的配置文件,然后使用控制器文件来加载它们,然后使用AMD modern dojo not legacy code@bRIMOs尝试所有这些。对不起,我不明白你说的: