Выход маршрутизатора в макете

#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> маршрутизатором.