Angular 路由何时才用loadChildren?

请问什么情况才用loadChildren路由啊?网上说是加载子模块,在项目中,什么才叫子模块啊 .对这个"子模块"设计规范如何定义的?
有没有例子参考下。?

阅读 3.6k
1 个回答

当你想延迟加载一组路由时, 可以考虑使用loadChildren.
其实主要是为了给angular打包减负, 提升性能。

比如你定义了两个路由

{ path: 'login', component: LoginPage },
{ path: 'user', loadChildren: './modules/user.module#UserModule'},

一个是#login, 静态路由, 路由初始化的时候就会将loginPage一起加载。
一个是#user, 动态路由, 使用loadChildren, 来延迟加载UserModule
比如在你的应用中,从来也不需要跳转到#user, 那UserModule下的内容也根本不需要加载。
尤其当你的UserModule下面页面特别多时,性能提升就会很明显。

而这个UserModule其实就是一个angular的module,
你把User相关的组件,服务,甚至user下面的二级路由配置,都可以放到这个UserModule里面,

至于定义规范,就是定义一个angular module. 把你需要的代码放到对应的数据组就行了。

@NgModule({
    declarations: [...],
    providers: [...],
    imports: [...]
    .....
});
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题