2

この質問は以前に尋ねられましたが、ほとんどの回答は、これを行う角度シードを見ることを示唆しています。

// 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']);
    });
4

1 に答える 1

2

この単純な例では、問題にならない場合があります。ただし、相互に依存するモジュールが多数ある場合、すぐに管理の悪夢に陥ります。たとえば、moduleA.js の前に moduleB.js をロードすると (moduleB が moduleA に依存している場合)、エラーが発生します。angular ローダーは、配列内で moduleB.js の後に定義されている場合でも、moduleA.js を最初にロードします。

もう 1 つの利点は、ファイルを非同期的にロードすることです (これは、アプリケーションのさまざまな領域でライブラリ要件が異なる場合に役立ちます。非同期ロードにより、これらのライブラリが利用可能になる前にホームページをレンダリングして実行を開始できます)。

于 2013-05-14T17:44:51.017 に答える