main модуль, в шаблоне компонента main через именованные router-outlet определяю компоненты. Есть модуль poll, который загружается в зависимости от конфига, он определяет маршрут и декларирует компонент poll. Возможно в шаблоне main через именованный router-outlet опубликовать компонент poll, или poll при любом раскладе должен быть в списке дочерних роутов main модуля?
На самом деле не могу осознать этот вопрос: "Возможно в шаблоне main через именованный router-outlet опубликовать компонент poll...". Типа, под шаблоном ты подразумеваешь HTML?) В общем, как я понял, ты хочешь понять, можно ли определить Poll компонент на верхнем уровне (на уровне модуля main). Здесь есть пример где Sidebar на верхнем уровне в именованный router-outlet подставляется один, а уже в дочерних роутах переопределяется на другой: https://www.techiediaries.com/angular-router-multiple-outlets Я правильно понял вопрос?)
Спасибо за ссылку)) Под шаблоном я подразумеваю HTML, верно. Суть в том, что я не хочу видеть вьюху компонента Poll, если модуль Poll не определен. При этом хотел реализовать это при помощи router-outlet, не используя структурные директивы: <app-poll *ngIf="config.poll.on"><app-poll> . Типа, Poll модуль определился, опубликовал маршрут к именованному outlet, а сам router-outlet находится в другом модуле. Как-то так)) main.module ... imports: [ RouterModule.forChild({ path: '', component: MainComponent}) ] ... main.component.html ... <router-outlet name="poll"></router-outlet> ... poll.module
Да, я понял что тебе нужно. Нормального решение в голову не приходит, я бы тоже разбирался) Можно подумать в сторону подгрузки этого Poll как lazyLoadModule и наложить на него canLoad/canActivate чет из этого... Но не утверждаю что это будет работать, я бы попробовал мб в этом направлении подумать Хотя он же на пустоту не заменится)) Ну короче да, хз) А может и заменится :D
Да, можно в Main модуле через lazyLoadModule загружать Poll в зависимости от условий, но хотелось сделать так, чтоб Poll был самодостаточным))
Так а почему он будет становится от этого НЕ самодостаточным? Имею ввиду, это же логика будет не втутри него, а на уровне маршрутизации
В принципе да, ты прав, наверное так и поступлю, тем более уже попробовал, и это работает
Ну я думаю это найболее логичный вариант, во всяком случае из тех что первыми пришли мне в голову) Ну типа классик история со стратегиями подгрузки модулей. Думаю норм
Обсуждают сегодня