Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.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 异步下载几个js脚本,然后按顺序执行_Javascript_Jquery_Asynchronous_Ember.js - Fatal编程技术网

Javascript 异步下载几个js脚本,然后按顺序执行

Javascript 异步下载几个js脚本,然后按顺序执行,javascript,jquery,asynchronous,ember.js,Javascript,Jquery,Asynchronous,Ember.js,我正在使用Ember.js构建一个应用程序。网站的管理部分需要使用一些不同的JavaScript库 我只想在访问站点的管理路径时下载这些库 我想我可以做如下回答: 但我对那些文件的执行顺序感到紧张 假设myscript2.js依赖于myscript1.js中的一些函数 myscript1.js会在myscript2.js之前加载(!)并执行(!) 如果不是,我如何异步下载所有文件,然后按顺序执行它们?我只想链接。然后(): 但那要等到一个被下载并执行之后,它才能开始下载下一个——我想同时下载所

我正在使用Ember.js构建一个应用程序。网站的管理部分需要使用一些不同的JavaScript库

我只想在访问站点的管理路径时下载这些库

我想我可以做如下回答:

但我对那些文件的执行顺序感到紧张

假设
myscript2.js
依赖于
myscript1.js
中的一些函数

myscript1.js
会在
myscript2.js
之前加载(!)并执行(!)

如果不是,我如何异步下载所有文件,然后按顺序执行它们?我只想链接
。然后()

但那要等到一个被下载并执行之后,它才能开始下载下一个——我想同时下载所有的,但然后按顺序执行它们


感谢您的帮助。

您需要一个javascript加载程序来管理脚本之间的依赖关系

如果requirejs对于您的需求来说太大了,并且您不打算自己编写一个,那么看看这些较小的库:

我一直在研究它-但我真的只需要在我的网站上的一个地方使用它,表面上看,似乎没有必要包含另一个库来加载其他库。。。但缩小后的版本只有14kb。。。嗯…你要找的是承诺链。我想要一个样本,但我现在在手机上。也许这不是最优雅的选择,但你能把只管理的js库都集中到一个js文件中,然后直接加载吗?我想到了这个想法。这可能就是我要走的路线。
$.when(
    $.getScript( "/mypath/myscript1.js" ),
    $.getScript( "/mypath/myscript2.js" ),
    $.getScript( "/mypath/myscript3.js" ),
    $.Deferred(function( deferred ){
        $( deferred.resolve );
    })
).done(function(){

    //place your code here, the scripts are all loaded

});
$.getScript( "/mypath/myscript1.js" )
.then(function{$.getScript( "/mypath/myscript2.js" )})
.then(function{$.getScript( "/mypath/myscript3.js" )})