我正在编写一个包含多个模块/文件的库。其中一个文件(我们称之为 Main)将依赖于所有其他文件,因此当用户加载此文件时,整个库将被加载。
现在用户可以将我所有的库放在一个子文件夹中(我们称之为 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 将尝试从 MyLib.Helper.js 而不是 subdir1/MyLib.Helper.js 文件加载它它所在的位置。
有没有办法告诉 requirejs 从 subdir1 加载子模块?我知道我可以枚举配置中的所有这些模块,但这需要最终用户知道我的库的内部结构(这是不可接受的)。理想情况下,我应该能够以某种方式枚举应该从 MyLib.Main.js 文件中的 subdir1 加载的所有模块(但请注意,此时我无法硬编码它将是 subdir1)。