Как я могу закрыть дочерний вспомогательный маршрут, оставаясь на маршруте родного брата? - PullRequest
0 голосов
/ 01 мая 2019

Переход от вспомогательного маршрута

parent/(childA//dialog:childC)

к текущему братскому маршруту приводит к фанки-URL

parent/(child)

вместо желаемого

parent/child

Я могу проложить дочерний вспомогательный маршрут без проблем.Вот мои маршруты:

{
  path: 'parent',
  component: ParentComponent,
  canActivate: [ParentGuard],
  canActivateChild: [ParentGuard],
  resolve: {
    object: ParentResolverService
  },
  children: [
    {
      path: '', redirectTo: 'childA', pathMatch: 'full'
    },
    {
      path: 'childA', component: ChildAComponent, outlet: 'primary'
    },
    {
      path: 'childB', component: ChildBComponent, outlet: 'primary'
    },
    {
      path: 'childC', component: ChildCComponent, outlet: 'dialog'
    }
  ]
}

Вот вызов router.navigate, который я пытаюсь «закрыть» вспомогательный маршрут.

this.router.navigate(['../', { outlets: { dialog: null }}], {relativeTo: this.route.parent});

Я устал от других вариантов безуспешно.

Хотя изначально это работает (перенаправлено на страницу одного брата), все ссылки на router с дочерней страницы теперь прерываются.

Поэтому мне нужен кто-то, кто скажет мне, что я делаю не так с моимвызов router.navigate.Мне нужно сделать звонок таким, чтобы я в конечном итоге перешел с

parent/(childA//dialog:childC)

на

parent/childA
...