現在の JS プロジェクトを構築するために RequireJS を使用しています。使用する前に初期化する必要があるライブラリ/jQuery プラグインがいくつかあります。初期化は非同期であり、戻り時にコールバックが呼び出されます。したがって、次のコードでは競合状態が発生します (依存関係が読み込まれて初期化されていますか?)。
dep_that_needs_to_be_initialized_before_it_can_be_used.js:
define(
['raw_library_source'],
function(){
// this init call is async and will invoke the callback when done
// $ is global
$.plugin.init({
//config
},callback);
}
);
app.js:
define(
['dep_that_needs_to_be_initialized_before_it_can_be_used'],
function(){
// the following line may fail in case the dependcy is not yet initialzed
$.plugin.doSomething();
}
);
ライブラリも初期化されるまで、依存関係の要求を「待機」させる方法を知っている人はいますか (同期的に行うこともできます)。