#angular
#angular
Вопрос:
Я хотел бы изменить макет в моем приложении Angular 2. Макет окружает выход маршрутизатора, и в этом моя проблема. Поэтому я не могу сделать что-то вроде :
<router-outlet name="navbar"></router-outlet>
<router-outlet></router-outlet>
<router-outlet name="footer"></router-outlet>
Мой выход по умолчанию должен находиться между некоторыми тегами макета…
Чтобы проиллюстрировать, чего я хочу, я попробовал это преобразование :
<router-outlet name="layout">
<router-outlet></router-outlet>
</router-outlet>
И в моем макете у меня есть <ng-content></ng-content>
. Но transclusion, похоже, не работает с выходами.
Как я мог бы сделать что-то похожее на макет в Angular 2? Спасибо!
Комментарии:
1. Пожалуйста, поясните немного подробнее, в чем заключается реальная проблема, которую вы пытаетесь решить.
Ответ №1:
Компонент, добавленный маршрутизатором в выход маршрутизатора, добавляется под <router-outlet>
, поэтому добавлять что-либо внутри <router-outlet>
бессмысленно, и это также не поддерживается.
«Внутренний» <router-outlet>
должен быть добавлен в компонент, который добавляется <router-outlet>
маршрутизатором.