AngularX 路由最佳实践
2017-06-02 12:06
375 查看
前端组件化之后,就牵扯到组件的路由问题,那我们希望一个比较完美的实现是这样的:主模块管理到各个子模块的路由信息,子模块管理自己的路由信息,子模块在被访问到的时候再加载。
下面看一下angularx是怎么实现这个思路的。
首先在主模块定义到子模块的路由信息,设置子模块的懒加载用loadChildren配置。如下:
子模块管理子模块的路由信息:
这样当访问项目首页的时候,访问到的是HomePageComponent。此时forms模块不会加载,当访问到/forms时,forms模块加载,forms模块的根路径展示到的是FormsComponent,在这里还可以配置forms模块的子路由。
参考:
Angular 4.x 路由快速入门
Angular 4.x LocationStrategy
Angular 4.x Router Link Directives
下面看一下angularx是怎么实现这个思路的。
首先在主模块定义到子模块的路由信息,设置子模块的懒加载用loadChildren配置。如下:
@NgModule({ imports: [ RouterModule.forRoot([ {path: '', component: HomePageComponent}, {path: 'forms', loadChildren: "app/forms/forms.module#FormsModule"} ]) ], exports: [RouterModule] }) export class AppRoutingModule {}
子模块管理子模块的路由信息:
@NgModule({ imports: [ RouterModule.forChild([ {path:'',component: FormsComponent}, children:[ {path:'checkbox',component: CheckBoxComponent}, {path:'input',component: InputComponent} ] ]) ], exports: [ RouterModule ] }) export class FormsRoutingModule {}
这样当访问项目首页的时候,访问到的是HomePageComponent。此时forms模块不会加载,当访问到/forms时,forms模块加载,forms模块的根路径展示到的是FormsComponent,在这里还可以配置forms模块的子路由。
参考:
Angular 4.x 路由快速入门
Angular 4.x LocationStrategy
Angular 4.x Router Link Directives
相关文章推荐
- Atitit. js mvc 总结(2)----angular 跟 Knockout o99 最佳实践
- ngCloak 实现 Angular 初始化闪烁最佳实践
- ngCloak 实现 Angular 初始化闪烁最佳实践
- angular-数据绑定的最佳实践
- Atitit. js mvc 总结(2)----angular 跟 Knockout o99 最佳实践
- Atitit.angular.js 使用最佳实践 原理与常见问题解决与列表显示案例 attilax总结
- Atitit.angular.js 使用最佳实践 原理与常见问题解决与列表显示案例 attilax总结
- Atitit.angular.js 使用最佳实践 原理与常见问题解决与列表显示案例 attilax总结
- Android 组件化 —— 路由设计最佳实践
- React + Redux 最佳实践 学习之 路由
- angular最佳实践
- 【荐】Angular 最佳实践
- 开源最佳实践:Android平台页面路由框架ARouter
- Android 组件化 —— 路由设计最佳实践
- Angular 2 – 提升水平的最佳实践
- ngCloak 实现 Angular 初始化闪烁最佳实践
- 【PDF下载】阿里开源峰会之安卓页面路由框架ARouter最佳实践
- ngCloak 实现 angular 初始化闪烁最佳实践 推荐
- AngularJS 最佳实践 - 转自:http://www.lovelucy.info/angularjs-best-practices.html
- Angular最佳实践之$http-麻雀虽小 五脏俱全