У меня такое ощущение, что название просто не может быть пояснительным:)
Настройка
Предположим, у меня есть следующая структура:
![enter image description here](https://i.stack.imgur.com/klAK6.png)
где app.js
файлы - это основные модули начальной загрузки / ввода для приложений, которые выглядят следующим образом:
app01
require.config({});
require([
'app/component1.js'
],
function(component){
// do something with component1
});
app02
require.config({});
require([
'app/component2.js'
],
function(component){
// do something with component2
});
, которые оба работают с соответствующими index.html
файлами.
У меня есть файл конфигурации сборки RequireJS (допустим правильное размещение, связанное с путями) для app01 :
({
appDir: 'apps/app01',
baseUrl: '.',
dir: 'built_apps/app01',
optimize: 'closure',
paths: {
},
modules: [
{
name: 'app'
}
]
})
, который работает просто отлично. Аналогичный файл (замена app01
на app02
) отлично работает для app02 .
Проблема / цель
Теперь я хочу иметь возможность запускать инструмент сборки RequireJS (используя Google Closure с Rhino под Ant, но в данном случае это не имеет значения) для приложений app01 и app02 используя тот же файл конфигурации сборки и, предпочтительно, без фактического перечисления всех приложений по имени (поскольку число и имена могут изменяться со временем).
В основном я ожидаю (или, скорее, надеюсь) иметь что-то вроде этого:
({
appDir: 'apps',
baseUrl: '.',
dir: 'built_apps',
optimize: 'closure',
paths: {
},
modules: [
{
name: 'app*/app' // notice the wildcard
}
]
})
, который будет работать в каталоге built_apps
, найти все приложения в приложении * / app и оптимизировать каждое из них.
Я знаю, что могу использовать Ant для создания такого файла конфигурации сборки на лету для каждого приложения, запустить сборку для него и затем очистить, но я бы предпочел решение RequireJS.
Есть ли способ сделать что-то подобное с RequireJS?