据我所见,没有为使用角度路由加载惰性功能模块提供默认值。仅适用于离子页面。
我们还在 ionic 3 应用程序中使用了 angular (5) 路由,其中包含应该延迟加载的嵌套功能模块。但这不适用于默认的 ionic-app-scripts 配置,我们认为深入研究它太耗时了。
从 ionic 4 开始,他们将只使用 ionic-cli 而没有所有 ionic-app-scripts 配置。因此,我建议等待 ionic 4 并稍后升级,并像我们一样坚持使用完整的捆绑包(没有延迟加载,但有缩小和 AOT)。
为了与我们的功能模块分离一起工作,我们必须从功能模块中导出路由并合并它们,如下所示:
@NgModule({
imports: [
RouterModule.forChild([
{
path: DashboardRoutingRouteNames.Dashboard,
component: DashboardComponent,
children: [
{
path: '',
redirectTo: DashboardRoutingRouteNames.Overview,
pathMatch: 'full'
},
/**
* This is a workaround because AOT is not working correct with ionic 3 (default ionic-app-scripts configuration) and lazy loaded feature modules of angular.
*/
dashboardOverviewRoutes,
dashboardAccountRoutes
]
}
])
],
exports: [
RouterModule
]
})
export class DashboardRoutingModule {
}
export const dashboardAccountRoutes: Route = {
path: DashboardRoutingRouteNames.Account,
children: [
{
path: '',
component: AccountComponent
}
]
};