angular2及以上版本执行"ng build --prod"命令时为什么会生成Chunk文件

Why Chunk files are generated ,when the "ng build --prod" command is isssued in angular 2 and above versions

目前正在使用高级 ui 框架(例如版本 2 和 4 的 angular)实现我的用户界面代码。

每当我想将代码部署到服务器时,我需要通过 issuing 以下命令 build 项目“ng build --prod" 正在生成如此多的块文件。

我想知道为什么会生成这些块文件。

这些块由 webpack 制作,它们用于将您的代码从服务器加载到浏览器。

您可以在 Webpack 上的官方 Angular docs 中阅读有关与 Angular 集成的更多信息。

因为Angular是单页应用。

这些块也会在您为应用程序提供服务时生成。这是我的 ng serve 命令的结果(没有标志,只是服务):

** NG Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ ** 
Date: 2018-04-10T12:09:49.010Z                                                                               
Hash: 7e4a7d27b89ee3d81e37                                                                                   
Time: 15613ms                                                                                                
chunk {administration.module} administration.module.chunk.js () 9.22 kB  [rendered]                          
chunk {exploitation.module} exploitation.module.chunk.js () 1.26 MB  [rendered]                              
chunk {inline} inline.bundle.js (inline) 5.79 kB [entry] [rendered]                                          
chunk {main} main.bundle.js (main) 625 kB [initial] [rendered]                                               
chunk {polyfills} polyfills.bundle.js (polyfills) 623 kB [initial] [rendered]                                
chunk {scripts} scripts.bundle.js (scripts) 562 kB [initial] [rendered]                                      
chunk {source-post.module} source-post.module.chunk.js () 1.42 MB  [rendered]                                
chunk {styles} styles.bundle.js (styles) 653 kB [initial] [rendered]                                         
chunk {vendor} vendor.bundle.js (vendor) 18.9 MB [initial] [rendered]                                        

webpack: Compiled successfully.   

如您所见,块也在那里生成。

这些块代表纯 Javascript 代码。在此代码中,您将找到您的样式、模板和所有 Angular 功能(组件、服务...)。

Angular 使用这些块来呈现动态页面。在引擎盖下,当您在 SPA 上导航时,您实际上永远不会离开 index.html 页面。该文件的内容将被您的块替换。