通过requirejs自动加载模块

Load modules automatically via requirejs

本文关键字:加载 模块 requirejs 通过      更新时间:2023-09-26

我想加载jQuery和几个带有requirej的插件。设置配置对象"路径"answers"填充程序"属性是可行的。因此,在TypeScript中,我可以要求jQuery并通过amd依赖项加载插件。

现在我想尽量减少加载jQuery和插件所需的代码。我可以告诉requirejs"每当需要jQuery时,通过path属性中给定的路径加载它。然后加载以下插件…"。

从本质上讲,这将允许我只需要jQuery。所有插件也将自动加载。

正如您所发现的,shim配置允许您定义在模块之前加载的内容,但在模块之后没有相应的加载功能。然而,r.js优化的总体方法是将它们捆绑在一个文件中,以节省加载时间。请参阅从requirejs-jquery文档页面链接的shim示例的优化部分。

你可能会在上面添加的另一个破解方法是定义你自己的模块来加载其他模块:

require.config( {
    shim: {
        jquery: { exports: ['jQuery', '$'] },
        plugin1: { deps: ['jquery'] },
        plugin2: { deps: ['jquery'] }
    }
});
define('jquerywithplugins', ['jquery', 'plugin1', 'plugin2'], function(jq) {
    return jq;
});

然后稍后执行require(['jquerywithplugins']) 而不是require(['jquery'])