У меня есть меню с некоторыми кнопками, когда пользователь нажимает на меню, страница перенаправляется на другую страницу со списком кнопок, на которых есть ссылка на другую страницу.Angular2 inested children routing не находит соответствие маршрута
Поэтому мой маршрутизации выглядит следующим образом:
const routes: Routes = [
{
path: '',
data: {
title: 'Components'
},
children: [
{
path: 'departments/:fname',
component: DepartmentsComponent,
data: {
title: 'Departments'
},
children: [
{
path: '/:dname/modules',
component: ModulesComponent,
data: {
title: 'Modules'
}
}
]
},
]
}
];
Таким образом, пользователь изначально имеет URL из:
components/departments/informatics
Когда пользователь нажимает на любой из кнопок внутри страницы, It shou ld должен быть перенаправлен на страницу модулей с параметром перед ним. Например:
components/departments/informatics/modules
Heree как я сделать routerlink:
<div class="row" *ngFor="let fac of _faculty">
<ul>
<li *ngFor="let dep of fac.Departments" class="checking">
<a routerLinkActive="active" [routerLink]="[department ,'modules']">
</a>
</li>
</ul>
я получаю: Error: Cannot match any routes. URL Segment
Что же я делать не так?
Ok здорово, это хорошо выглядит. Но почему появилась новая страница после старой страницы? Например, в вашем плункере, когда вы нажимаете «информатика», модули информации отображаются ниже. Я не хочу этого, я хочу очистить все от страницы и просто показать модули для информатики. Есть идеи? – DingDong
Не забудьте понять: вам нужна простая навигация? В этом случае вам не нужно использовать детские маршруты. – kdev
Вы имеете в виду это? http://plnkr.co/edit/GJ0KBTIlPoloBr0cbEHS?p=preview – kdev