Dynamic require no RequireJS, obtendo o erro “O nome do módulo ainda não foi carregado para o contexto”?
Existe uma maneira de definir um módulo que "dinamicamente" carrega outros módulos no RequireJS? Se sim, como o otimizador (r.js) entende como / quando um módulo deve ser incluído?
Por exemplo, vamosdynModules
um módulo que define pares nome / caminho:
define([], function () {
return ['moduleA', 'moduleB']; // Array of module names
});
Outro módulo vai carregar módulos dinamicamente, com base na matriz. Isso vainão funciona:
define(['dyn_modules'], function (dynModules) {
for(name in dynModules) {
var module = require(path); // Call RequireJS require
}
// ...
});
... me dá:
Erro não detectado: o nome do módulo "moduleA" ainda não foi carregado para o contexto: _. Use require ([])http://requirejs.org/docs/errors.html#notloaded
eu possoresolva o erro, mas não é mais "dinâmico":
define(['dyn_modules', 'moduleA', 'moduleB'], function (dynModules) {
for(name in dynModules) {
var module = require(path); // Call RequireJS require
}
// ...
});