我有一个顶级路由器,可以延迟加载子路由功能模块,升级到 Angular v11.0.1 后它已停止正常工作。
在 ng11 中的路由器事件中注销,功能模块被加载,并且RouteConfigLoadStart
都RouteConfigLoadEnd
被正确的子路由器配置触发,但RoutesRecognized
未被调用。如果我第二次单击链接(不是routerLink
),所有事件都会正常触发并加载相应的组件。
澄清一下:这不仅仅是链接的问题。它也不适用于初始页面加载,除非我转到不同的路线(第一次也不会加载),然后返回原始路线
此设置在 Angular v10.2.3 中正常工作(即单击并在初始加载时)
应用路由模块:
const routes: Routes = [
{path: '', redirectTo: '/dashboard', pathMatch: 'full'},
{path: 'browse', loadChildren: () => import('./browse/browse.module').then(m => m.BrowseModule)},
{path: 'dashboard', loadChildren: () => import('./dashboard/dashboard.module').then(m => m.DashboardModule)},
{path: '**', redirectTo: '/dashboard'}
];
@NgModule({
imports: [RouterModule.forRoot(routes, {useHash: true})],
exports: [RouterModule]
})
export class AppRoutingModule { }
仪表板路由模块
const routes: Routes = [
{path: '', component: DashboardComponent},
{path: ':id', component: DashboardComponent}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class DashboardRoutingModule { }
应用模块
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
AppRoutingModule
],
providers: [{provide: APP_BASE_HREF, useValue: ''}],
bootstrap: [AppComponent]
})
export class AppModule { }
应用组件模板
<router-outlet></router-outlet>
我很乐意提供任何可能有助于深入了解的其他详细信息。提前致谢。