在Angular4中,您可以使用loadChildren
的路由配置中的pathToMyModule#MyModule
属性延迟加载模块。我想知道是否有任何属性我可以指定总是加载我的模块(所以基本上禁用延迟加载)。
答案 0 :(得分:2)
导入启动应用程序时引导模块中的所有模块。通常它被称为AppModule
。这是默认方式。然后不要使用loadChrildren
。模块应相互导入层次结构,然后急切导入所有模块。
@NgModule({
imports: [
AppRoutingModule,
LoginModule,
//here you should import all other modules, or other the modules should import each other hierarchically
],
declarations: [
AppComponent
],
bootstrap: [AppComponent]
})
export class AppModule {
}
@NgModule({
imports: [
RouterModule.forRoot([
{path: '', component: SomeComponent}
],
exports: [
RouterModule
]
})
export class AppRoutingModule {
}
@NgModule({
imports: [
LoginRoutingModule
]
})
export class LoginModule {
}
@NgModule({
imports: [
RouterModule.forChild([
{
path: 'login',
children: [
{path: '', pathMatch: 'full', redirectTo: 'somepath'},
{path: 'somepath', component: SomeOtherComponent},
]
}
])
],
exports: [
RouterModule
]
})
export class LoginRoutingModule {
}