0

ここに画像の説明を入力

これを行っているとしましょう

 require(['module1', 'module2', 'module3'], function(m1, m2, m3){   
      //Doing something after they load 
 });

正確にはどうなりますか?

私はこれが起こると思います: 最初に、require は baseUrl またはパスを使用してこれらのモジュールのファイルパスを構築し、次にこれらのモジュールの get 要求を送信し、O/s カーネルにこれらのファイルをロードするように依頼します。(ここにはイベントループはないと思います)

私は完全に混乱しています 助けてください どうなりますか?

4

1 に答える 1

0

最初の図では、モジュールは同期してロードされます。つまり、module1 が要求され、正常にロードされた場合は module2 のロードが開始されます。

2 番目の図では、モジュールが重複しているため、リクエストが次々に送信されますが、すべてのファイルが非同期でロードされます。つまり、次のリクエストを開始する前に、1 つのモジュールが正常にロードされるのを待つ必要はありません。

そのため、requireJs はすべてのスクリプトを非同期でロードし、すべてのリクエストがロードされるのを待ちます。その後、すべてのモジュールを関数に挿入します。

于 2013-08-04T12:54:24.610 に答える