有没有办法在 RequireJS 中定义一个“动态”加载其他module的module?如果是,优化器 (r.js) 如何理解如何/何时必须包含module?
例如,让dynModules
一个定义名称/路径对的module:
define([], function () {
return ['moduleA', 'moduleB']; // Array of module names
});
另一个module将根据数组动态加载module。这将不起作用:
define(['dyn_modules'], function (dynModules) {
for(name in dynModules) {
var module = require(path); // Call RequireJS require
}
// ...
});
... 给我:
未捕获的错误:尚未为上下文加载module名称“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
}
// ...
});