这个问题之前已经被问过,我看到大多数答案都建议查看执行此操作的 Angular 种子:
// include angular loader, which allows the files to load in any order
/*
AngularJS v1.0.0rc1
(c) 2010-2012 AngularJS http://angularjs.org
License: MIT
*/
'use strict';(function ..............................................
$script([
'lib/angular/angular.js',
'js/app.js',
'js/services.js'
], function() {
// when all is done, execute bootstrap angular application
angular.bootstrap(document, ['myApp']);
});
但是我还是不明白loader有什么优势。有人可以向我解释一下上面的代码和下面的代码有什么区别吗:
<script src='lib/angular/angular.js'></script>
<script src='js/app.js'></script>
<script src='js/services.js'></script>
<script type="text/javascript">
angular.element(document).ready(function () {
angular.bootstrap(document, ['mainApp']);
});
最佳答案
在这个简单的示例中,这可能并不重要。然而,当您有许多相互依赖的模块时,您很快就会陷入管理噩梦。例如,在 moduleA.js 之前加载 moduleB.js(如果 moduleB 依赖 moduleA)会导致错误。 Angular 加载器将首先加载 moduleA.js,即使它是在数组中的 moduleB.js 之后定义的。
另一个好处是它异步加载文件(如果您的应用程序的不同区域具有不同的库要求,这将很有用:异步加载允许主页在这些库可用之前呈现并开始运行)。
关于angularjs - 为什么我想使用 AngularJS Loader 以任意顺序加载 AngularJS 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16549289/