Загрузить себя в модальном режиме — компонент Angular

Мне нужно загрузить компонент в модальном режиме, когда вы обращаетесь к нему через его URL-адрес. Нужна помощь, чтобы понять, как должна быть настроена эта настройка, у меня есть ngxbootstrap для углового компонента, и я могу открывать модальные окна в ответ, например, на нажатие кнопки. Не удается найти ничего, что показывает, как весь шаблон компонента будет загружаться в модальном режиме при доступе к URL-адресу компонента.

Спасибо


person Jimmy Fencer    schedule 27.02.2018    source источник


Ответы (1)


Вам нужно иметь один компонент для маршрута, и в нем ngOnInit вы можете открыть модальное окно с нужным компонентом в модальном.

Чтобы сделать его многоразовым, у вас может быть компонент маршрута, который открывает модальное окно с любым компонентом, переданным ему в данных маршрута. Я предполагаю, что это имело бы смысл только для дочерних маршрутов, иначе это было бы просто модальное окно на пустом фоне, например:

const childRoutes = [
    { path: 'route1', component: ModalRouteComponent, data: { component: MyModalComponent1 }},
    { path: 'route2', component: ModalRouteComponent, data: { component: MyModalComponent2 }}
];

Компонент модалруте:

ngOnInit() {
    this.route.data.subscribe(data => this.openModal(data.component));
}
person funkizer    schedule 27.02.2018