我的根模块的路线是这样的:
RouterModule.forRoot([
{ path: '', redirectTo: 'management-portal', pathMatch: 'full' },
{ path: 'management-portal', loadChildren: './xxx/management-portal.module#ManagementPortalModule', canActivate: [AuthGuard] },
{ path: 'login', component: LoginComponent },
{ path: '**', component: NotFoundComponent }
], {
enableTracing: true
})
它按预期工作,我可以在登录后路由到 ManagementPortalModule。让我们看一下我的延迟加载的 ManagementPortalModule。
有一个命名的路由器出口。
<router-outlet name='sub'></router-outlet>
我在 ManagementPortalModule 中的路线。
RouterModule.forChild([
{
path: '', component: ManagementPortalComponent,
children: [
{ path: '', component: Test1Component, outlet: 'sub' },
{ path: 'test2', component: Test2Component, outlet: 'sub' }
]
}
])
它可以在开始时加载'sub'出口中的Test1Component。我想在单击链接时路由到 Test2Component
<a [routerLink]="[{ outlets: { sub: ['test2'] } }]"></a>
生成的Url
/管理门户/(子:test2)
我点击时没有任何反应。然后我尝试了
<a [routerLink]="['',{ outlets: { sub: ['test2'] } }]">
Url
/管理门户(子:test2)
我认为该网址的格式正确this https://angular.io/guide/router#milestone-4-crisis-center-feature,然后我点击的时候出现错误
无法匹配任何路线。 URL 段:“test2”
请帮忙,非常感谢!