可以角度决定为前端带来哪个模块,或者总是带着所有模块运行完整的应用程序?

时间:2017-03-03 16:19:30

标签: angular typescript routing components

角度2可以决定为前端带来哪个模块,还是总是带着所有模块运行整个应用程序?

1 个答案:

答案 0 :(得分:0)

您需要使用延迟加载的路由/模块。

文档:

https://angular.io/docs/ts/latest/guide/ngmodule.html#!#lazy-loading-modules-with-the-router

对于延迟路由,只有在加载该路由时才会加载该路由中的组件。如果组件在多个路由中使用,那么它应该加载到应该预先加载的共享模块中。

使用延迟加载的路由模块,请密切关注浏览器中的NET选项卡。只有在您第一次访问路径时才会加载延迟加载的路由模块中的组件,并且您将看到在NET选项卡中动态生成组件的请求。

这是一个轻量级的GitHub项目,专注于演示延迟加载。

https://github.com/danday74/angular2-router-modular

该项目基于Angular2快速入门项目。唯一已更改的文件是app文件夹中的文件。

特别要注意

https://github.com/danday74/angular2-router-modular/blob/master/app/app-routing.module.ts

随意new RegExp("/hello\s{0,1}[-_.]{0,1}world|ls\b/gim").test('hello world') //false ,然后git clone然后npm install可以看到它的实际效果并进行游戏。