Angular 2 RouterLink не может перемещаться, когда RouterLink на родительском элементе определен - PullRequest
0 голосов
/ 26 апреля 2019

Я настроил маршруты следующим образом:

{
path: 'myworkshop',
children: [
  { path: 'tagged/:tagTypeId', component: TaggedMessageListComponent, canActivate: [RouteGuard], resolve: { tagType: TagTypeResolver }, data: { allowed: ['isr'], context: SearchContexts.Isr } },
  { path: 'tagged', component: TaggedMessageListComponent, canActivate: [RouteGuard], data: { allowed: ['isr'], context: SearchContexts.Isr } },
],
canActivate: [RouteGuard],
data: { allowed: ['isr'] }

}

В моем шаблоне я могу получить доступ только к дереву <tree-child-brach /myworkshop/a82a716f-9019-4fb1-acb6-9a68f652ebfd

  <tree-child-branch  [name]="'Tagged Messages'" [routerLink]="['/myworkshop/', 'tagged']" ></tree-child-branch>

-child - это компонент шаблона, внутри которого я хочу получить доступ к другому маршрутизатору:

<li [routerLink]="getTagRouteParams(t.id)" routerLinkActive="active">
                    <span class="nav-tree-child-data" >{{name}}</span>
</li>



  getTagRouteParams(tagId: string) {
if (this.context == SearchContexts.Inv)
  return ['/myworkshop/tagged', tagId];

if (this.context == SearchContexts.Isr) {
  return ['/myworkshop/tagged', tagId];
}

throw new Error('Invalid context. ' + this.context);

}

Проблема в том, что я могу получить доступ к маршруту myworkshop/tagged/a82a716f-9019-4fb1-acb6-9a68f652ebfd, но я не перенаправлен на негоссылку, когда я нажимаю на <li [routerLink]="getTagRouteParams(t.id)" ></li>

...