Динамическое требование в RequireJS, ошибка «Имя модуля еще не загружено для контекста»?
Есть ли способ определить модуль, который «динамически» загружает другие модули в RequireJS? Если да, то как оптимизатор (r.js) понимает, как / когда должен быть включен модуль?
Например, пустьdynModules
модуль, который определяет пары имя / путь:
define([], function () {
return ['moduleA', 'moduleB']; // Array of module names
});
Другой модуль будет загружать модули динамически, основываясь на массиве. Это будетне работа:
define(['dyn_modules'], function (dynModules) {
for(name in dynModules) {
var module = require(path); // Call RequireJS require
}
// ...
});
... дает мне:
Uncaught Ошибка: имя модуля "moduleA" еще не загружено для контекста: _. Используйте требуют ([])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
}
// ...
});