RequireJSを使用してブラウザモジュールをロードしようとしていますが、興味深い問題が発生しました。
a
私はという名前の3つのモジュールを持ってb
おりc
、これらの単純なソースコードを持っています:
a.js
define(['./b', './c'], function(c, b) {
console.log('A IS LOADED!');
return 'A';
});
b.js
define(function() {
console.log('B IS LOADED!');
return 'B';
});
c.js
define(function() {
console.log('C IS LOADED!');
return 'C';
});
モジュールa
を単独でロードすると、すべてが正常に機能し、次のコードが実行されて「A」が返されます。
require(['./a'], function(a) {
console.log(a); // 'A'
});
しかし、2つの異なるモジュールが必要な場合、そのうちの1つはすでにロードされています。
require(['./a', './c'], function(a, c) {
console.log(a, c);
});
RequireJSはエラーになります:
C IS LOADED!
B IS LOADED!
require.js load timeout for modules: ./c
明らかにすでにロードされている場合。
誰かが以前にこの問題に遭遇したことがありますか?どうすれば解決できますか?