Javascript 脚本的保证运行顺序
使用以下命令,我可以让脚本以正确的顺序开始下载。但我相信,因为从文件大小来看,有些文件比其他文件大,所以可能会有一个文件开始出现问题Javascript 脚本的保证运行顺序,javascript,html,angularjs,asynchronous,deferred,Javascript,Html,Angularjs,Asynchronous,Deferred,使用以下命令,我可以让脚本以正确的顺序开始下载。但我相信,因为从文件大小来看,有些文件比其他文件大,所以可能会有一个文件开始出现问题 <script defer="defer" src="http://priatek-console/bower_components/highcharts/highcharts.js"></script> <script defer="defer" src="http://priatek-console/libs/angular.j
<script defer="defer" src="http://priatek-console/bower_components/highcharts/highcharts.js"></script>
<script defer="defer" src="http://priatek-console/libs/angular.js"></script>
<script defer="defer" src="http://priatek-console/apps/home/executive.js"></script>
因此,我最终的理解是,defer
将在页面本身加载之后开始按顺序加载脚本,但它不能保证脚本的运行顺序,因为有些脚本会在其他脚本之前完成下载
除了连接文件或使用类似于
require.js的东西之外,有没有一种简单的方法来解决这个问题?我正在使用约翰·帕帕的角度代码,我没有看到任何与此相关的东西。它也不建议使用angular.bootstrap
为什么您觉得首先需要defer
?您是否尝试过简单地将您的脚本
s按正确的顺序放在结束正文
标记之前?使用$q
和链承诺。是否需要按顺序加载脚本1)highcharts.js、2)angular.js、3)executive.js?@Oka请参阅此处的答案4:@guest271314,executive.js
依赖于angular.js
。
Uncaught Error: [$injector:modulerr] Failed to instantiate module executiveHome due to:
Error: [$injector:nomod] Module 'executiveHome' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.