此问题之前已经被问过,我看到大多数答案建议看一下角度种子:
// 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']);
});
但我仍然不明白装载机有什么优势。有人可以向我解释上面和下面的代码有什么区别:
<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']);
});
答案 0 :(得分:2)
在这个简单的例子中,它可能并不重要。但是当你有许多相互依赖的模块时,你很快就会遇到管理噩梦。例如,在moduleA.js之前加载moduleB.js(如果moduleB依赖于moduleA)会导致错误。 angular loader将首先加载moduleA.js,即使它是在数组中的moduleB.js之后定义的。
另一个好处是它以异步方式加载文件(如果您的应用程序的不同区域具有不同的库要求,这将非常有用:异步加载允许主页在这些库可用之前呈现并开始运行。) / p>