Выход с вложенным маршрутизатором с именем не работает - PullRequest
0 голосов
/ 15 октября 2018

Я борюсь с вложенными роутерами.Мои ситуации выглядят так:

У меня есть <router-outlet> в моем app.components.html

Затем я лениво загружаю свой модуль desktop.module.ts через URL: /d.

Это выглядит так:

const routes: Routes = [
    { path: 'workout', component: WorkoutComponent, outlet: 'desktop'},
    { path: '', component: DesktopComponent, pathMatch: 'full' }
];


@NgModule({
    imports: [
        CommonModule,
        IonicModule,
        RouterModule.forChild(routes)
    ],
    declarations: [WorkoutComponent, DesktopComponent],
})
export class DesktopModule {}

Теперь внутри моего desktop.component.html у меня есть еще одна розетка, подобная этой:

<router-outlet name="desktop"></router-outlet>

А также внутринастольный компонент, который я хочу направить на мой WorkoutComponent, используя «настольный» выходТаким образом, с помощью URL: /d/workout я отображаю свой WorkoutComponent внутри DesktopComponent.

Но я не могу направить маршрут к тренировке.Я попробовал это:

[routerLink]="/d/workout, outlet: { "desktop" }"

routerLink="/d/(desktop:workout)"

Но ни один из них не работает, и я не могу найти никаких рабочих ответов.

1 Ответ

0 голосов
/ 16 октября 2018

в desktop.module.ts вам нужно экспортировать RouterModule

@NgModule({
    imports: [
        CommonModule,
        IonicModule,
        RouterModule.forChild(routes)
    ],
    declarations: [WorkoutComponent, DesktopComponent],
    exports: [RouterModule]
})

, и вы должны перемещаться так (попробуйте, если все еще не работает, попробуйте это):

[routerLink]="['/d/workout']"
routerLink="/d/workout"
...