我正在使用 RequireJS 来模块化我的代码。我正在使用的网站将有几个不同的页面类别。对于其中每一个,我都想加载通用 JS 文件,其中包含所有页面类别中存在的所有依赖项,jQuery 是最明显的一个。我已经成功做到了。
对于其余页面,我想要有单独的 JS 文件。每个页面都有自己的模块,但我认为如果我一次下载多个页面模块会更有意义,这样当用户访问其他页面时,他将已经缓存了 JS 文件,而不必下载。
现在我尝试连接这些模块,效果相当好。但是,我不确定如何从文件加载特定模块。到目前为止我正在这样做:
require(['./js/common'], function (common) {
require(['public']);
});
common 是依赖项文件,public 是我包含所有依赖项的串联文件。它内部每个页面都有模块,但我不知道如何调用特定的模块。有什么想法吗?
最佳答案
看看bundles
RequireJS 运行时配置的选项。在你的情况下,它会是这样的:
bundles: {
public: ['mod1', 'mod2', ...]
}
我使用了 mod1
、mod2
因为我没有看到您问题中实际模块的名称,但您想要的是以下名称public
包内的模块以及您想要单独加载的模块。这样,RequireJS 就会知道,当您想要加载此类模块时,它必须从 public
获取它们,而不是单独搜索它们。
然后您应该能够将加载代码更改为:
require(['./js/common'], function (common) {
require(['mod1']);
});
同样,mod1
用于说明。
关于javascript - 在 RequireJS 中连接模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26358845/