app
|-plugins
|-plugin1
|-config.json
|-plugin1.module.ts
|-plugin1.component.ts
|-plugin2
|-config.json
|-plugin2.module.ts
|-plugin2.component.ts
Как вы можете видеть выше, у меня есть «приложение/плагины» папку, которая содержит плагины. Каждый модуль содержит один файл «config.json», который расскажет некоторые конфигурации, включая -Angular2: Загрузка модулей динамически из заданной папки
{
path: "feature1",
moduleFile: "feature1.module",
moduleClassName: "Feature1Module"
}
Так что я хочу есть, перед применением самонастройки он будет сканировать «приложение/плагины» папку и нагрузки все конфигурации плагинов и лениво регистрируют все маршруты модулей. Для примера выше маршрут будет
{
path: "feature1",
loadChildren: "app/plugins/plugin1/plugin1.module#Plugin1Module"
}
Таким образом, мы можем бросить новый плагин в папку плагинов и обновить приложение, и наш недавно упал плагин и работает.
Кто-нибудь знает, как я могу это достичь?
Примечание: Я на angular2 последней (2.1.0)
Почему бы просто не использовать 'NgModule' для каждой функции? – Sasxa
Я использую NgModule для каждой функции, но я хочу знать, как я могу прочитать все папки и прочитать конфигурацию, чтобы я мог лениво регистрировать эти модули. –
Я думаю, вам придется написать сценарий nodejs и сгенерировать код вручную. Это не Угловая вещь ... – Sasxa