我刚刚注意到 Angular 8(即将发布)已经弃用了“字符串类型路由器loadChildren”。(门票)
我是否正确理解他们指的是......
const routes = [
{
path: 'production',
loadChildren: './production/production.module#ProductionModule' // <<--this
}],
Run Code Online (Sandbox Code Playgroud)
要迁移到 Angular 8,解决方案是什么?
在票证中,他们指的是“动态导入”。我是否正确,这是指以下提案:
let module = await import('/modules/my-module.js');
Run Code Online (Sandbox Code Playgroud)
如果我们将来想使用延迟加载,有人可以预览一下路由文件实际上应该是什么样子吗?
问题
cannot find module如果遵循结构,我们会得到一个错误。
app-routing.module.ts
const routes: Routes = [
{
path: CHILD_MANAGEMENT_PORTAL.baseUrl,
canActivate: [AuthGuard],
component: EnvelopeComponent,
loadChildren: () =>
import('./features/child-management/child-management.module').then(
m => m.ChildManagementModule
),
data: {
menuResolver: ChildManagementMenuResolver,
pageTitleResolver: ChildManagementPageTitleResolver,
portalData: CHILD_MANAGEMENT_PORTAL
}
},
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
Run Code Online (Sandbox Code Playgroud)
child-management-routing.module.ts : 错误
const routes: Routes = [
{
path: 'dashboard',
loadChildren: './dashboard/child-dashboard.module#ChildDashboardModule'
},
{
path: '**',
redirectTo: 'dashboard'
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
declarations: []
})
export class SalesArrangementManagementRoutingModule {} …Run Code Online (Sandbox Code Playgroud) typescript angular-routing angular-module angular angular-load-children