Я ломаю свой мозг, пытаясь понять, как сделать эту работу.
У меня есть такая структура в app.component. html:
<mat-drawer-container >
<mat-drawer mode="side" opened>
<mat-accordion>
<mat-expansion-panel *ngFor="let tab of tabs">
<mat-expansion-panel-header
class="list-option"
[routerLink]="['/', tab.path\]"
routerLinkActive
#rla="routerLinkActive"
>
<mat-panel-title>
{{ tab.title }}
</mat-panel-title>
</mat-expansion-panel-header>
<router-outlet *ngIf="rla.isActive" name="primary"></router-outlet>
</mat-expansion-panel>
</mat-accordion>
</mat-drawer>
<mat-drawer-content>
<router-outlet name="sec"></router-outlet>
</mat-drawer-content>
Идея этой начальной части состоит в том, что, когда я нажимаю на одну из вкладок, она загружает маршрут и другой список вкладок, который появляется в расширяемой области. После этого я могу щелкнуть один из элементов в недавно загруженном списке, и он должен загрузить свое содержимое во второй маршрутизатор-розетку.
Но я не могу заставить его работать ...
Модуль app.routing конфигурируется следующим образом:
const appRoutes: Routes = [
{
path: '',
redirectTo: '/live-view',
pathMatch: 'full'
},
{
path: live-view,
loadChildren: './live-view/live-view.module#LiveViewModule',
canActivate: [AuthGuard]
}
];
Тогда у представления в реальном времени есть собственный модуль маршрутизации для вторичного устройства. розетка:
const routes: Routes = [
{
path: '',
component: LiveViewComponent,
children: [{ path: 'map/:mapId', component: MapComponent, outlet: 'sec' }]
}
];
Когда я нажимаю одну из опций в режиме live-view, я получаю эту ошибку:
Cannot match any routes. URL Segment: 'live-view/map/5d471bea281ead2d6507c3d5'
Я пытался добавить при выходе по ссылке кликаем, поэтому она меняется с [routerLink]="[item.url]"
на [routerLink]="[{outlets: {sec: [item.url]}}]"
; но если я делаю это, я получаю Cannot match any routes. URL Segment: 'live-view'
, и я не понимаю, почему это происходит.
Я попытался выяснить, где я размещаю имя выхода (ссылка против конфигурации маршрута), и ничего не кажется работа.
Есть идеи, пожалуйста? Я умираю здесь ...
Спасибо и всего наилучшего.