启用延迟加载的Plunkr示例:
我们不需要在根模块中导入或声明延迟加载模块。
将路由添加到顶层路由(app.routing.ts)并设置loadChildren。loadChildren会从根文件夹中获取绝对路径。RouterModule.forRoot()会获取routes数组并配置路由器。
在子模块中导入模块特定路由。
在子模块路由中,将路径指定为空字符串“”,也就是空路径。RouterModule.forChild会再次采用路由数组为子模块组件加载并配置路由器。
然后,导出const路由:ModuleWithProviders = RouterModule.forChild(routes);
Promises vs Observables
Promises:
返回单个值
不可取消
Observables:
可以使用多个值
可取消
支持map,filter,reduce和类似的操作符
ES 2016提议的功能
使用反应式扩展(RxJS)
根据时间的变化,数组成员可以异步获取