相关疑难解决方法(0)

RequireJS中的动态需求,获取"模块名称尚未加载上下文"错误?

有没有办法定义一个"动态"加载RequireJS中其他模块的模块?如果是,优化器(r.js)如何理解如何/何时必须包含模块?

例如,让dynModules一个定义名称/路径对的模块:

define([], function () {
    return ['moduleA', 'moduleB']; // Array of module names
});
Run Code Online (Sandbox Code Playgroud)

另一个模块将基于该阵列动态加载模块.这不起作用:

define(['dyn_modules'], function (dynModules) {
    for(name in dynModules) {   
        var module = require(path); // Call RequireJS require
    }

    // ...
});
Run Code Online (Sandbox Code Playgroud)

... 给我:

未捕获错误:尚未为上下文加载模块名称"moduleA":_.使用require([]) http://requirejs.org/docs/errors.html#notloaded

我可以解决错误,但它不再是"动态的":

define(['dyn_modules', 'moduleA', 'moduleB'], function (dynModules) {
    for(name in dynModules) {   
        var module = require(path); // Call RequireJS require
    }

    // ...
});
Run Code Online (Sandbox Code Playgroud)

javascript browser module requirejs r.js

56
推荐指数
2
解决办法
10万
查看次数

标签 统计

browser ×1

javascript ×1

module ×1

r.js ×1

requirejs ×1