我使用的是angular 2的最终版本,并且看到了loadChildren的出色的延迟加载功能。
一个最小的例子
export const routes: Routes = [
{ path: 'crisis', loadChildren: 'app/crisis/crisis.module#CrisisModule' }
];
在这种情况下,crisis.module会被延迟加载,但是它是一个字符串,而不是数组。但是我的页面可能由多个模块中的多个组件存在,所以我想知道;
您可以延迟加载多个模块,而无需为此路由专门创建包含组件的模块吗?
最佳答案
我刚刚遇到了与您相同的问题,并且找到了解决方案。希望对别人有帮助。你可以做这样的事情
const routes: Routes = [
{
path: '',
component: DashboardComponent,
children: [
{
path: 'events',
loadChildren: './event/event.module#EventModule'
},
{
path: 'participants',
loadChildren: './participant/participant.module#ParticipantModule'
}
]
}
];
当然,在父组件(此处为DashbordComponent)中,您将必须放置
router-outlet
。