複数のモジュール/ファイルで構成されるライブラリを作成しています。ファイルの 1 つ (メインと呼びましょう) は他のすべてのファイルに依存するため、ユーザーがこのファイルをロードすると、ライブラリ全体がロードされます。
これで、ユーザーはすべてのライブラリをサブフォルダー (subdir1 と呼びましょう) に配置できるため、requirejs を次のように構成します。
require.config({
paths: {
"jquery": "Scripts/jquery-2.0.3.min",
"knockout": "Scripts/knockout-2.3.0",
"MyLib.Main": "subdir1/MyLib.Main"
}
});
このシナリオでは、subdir1/MyLib.Main.js ファイルは問題なくロードされますが、このファイルが MyLib.Helper モジュールに依存している場合、requirejs は subdir1/MyLib.Helper.js ファイルではなく、MyLib.Helper.js からロードしようとします。それがどこにあるか。
サブディレクトリ1からサブモジュールをロードするようにrequirejsに指示する方法はありますか? config でこれらすべてのモジュールを列挙できることはわかっていますが、それにはエンドユーザーがライブラリの内部構造を知る必要があります (これは受け入れられません)。理想的には、MyLib.Main.js ファイル内の subdir1 からロードする必要があるすべてのモジュールを何らかの方法で列挙できるようにする必要があります (ただし、この時点で、それが subdir1 になることをハードコーディングできないことに注意してください)。