Angular2路由器 - 辅助路由

时间:2017-01-05 21:34:58

标签: angular angular2-routing

我有一个延迟加载的模块,当我转到LazyLoadedComponent时默认加载/lazy。到目前为止,没关系。

此组件包含2个路由器插座:

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

该模块有以下路线:

const routes = [
  {
    path: '',
    component: LazyLoadedComponent,
    children: [
      {
        path: '',
        component: NonAuxComponent
      },
      {
        path: '',
        component: AuxComponent,
        outlet: 'aux'
      }
    ]
  }
];

当我转到/lazy时,我确实按预期加载了3个组件。 但是,如果我想更改路径以显示AuxComponent,那就是:

{
   path: 'auxpath',
   component: AuxComponent,
   outlet: 'aux'
}

我试着去/lazy(aux:auxpath)它不能正常工作。

我也尝试使用routerLink来点击该网址:

<a [routerLink]="[{ outlets: { aux: 'auxpath' } }]">Load an auxiliary route</a>

但它也不起作用。

enter image description here

这是路由器的错误吗?我只是错过了一些东西吗?

您可以查看Plunkr进行自己的测试。

1 个答案:

答案 0 :(得分:3)

在尝试了很多事情后,我最终得出的结论是@angular/router可能是一个错误。

我创建了一个Github issue,自8月以来就证明了one was already existing