角度包中生成的各种文件的作用是什么(AoT编译)

时间:2017-10-11 10:02:32

标签: angular

我在当前的angular4项目中运行了ng build --prod --aot,我在dist文件夹中获得了以下文件。

        
  1. inline.6405cab307cfc3c6a636.bundle.js : 2 KB
  2.     
  3. main.a799c9fd4322567743dc.bundle.js : 35 KB
  4.     
  5. polyfills.b72d4efc376613f94934.bundle.js:63 KB
  6.     
  7. scripts.6072021e6a4e32c07d7e.bundle.js:963 KB
  8.     
  9. styles.737751caddf6a44d0993.bundle.css:146 KB
  10.     
  11. vendor.c85bb23c3f86ba86be80.bundle.js:548 KB
  12.     
  13. 0.01d7070ba0efe736c78d.chunk.js: 129 KB
  14. 我想知道:

    1. 每个文件中都包含哪种代码。我想知道这一点,因为我希望能够控制每个文件的大小。
    2. 浏览器中的页面加载需要以下哪些文件。
    3. 关于scripts.6072021e6a4e32c07d7e.bundle.js:我创建了一个新的ng4项目并对其进行了编译。 dist中没有这样的文件。但是,此文件是在编译当前项目期间生成的(并且权重最大)。你能回答为什么吗?

1 个答案:

答案 0 :(得分:2)

1)scripts.abc.bundle.js:从scripts文件https://github.com/angular/angular-cli/wiki/stories-global-scripts

中的.angular-cli.json数组生成

styles.abc.bundle.css:从styles文件中的.angular-cli.json数组生成

vendor.abc.bundle.js:从node_modules

生成

polyfills.abc.bundle.js:为较旧的浏览器兼容性(如IE 9)生成

main.abc.bundle.js:您的主要组件代码

inline.abc.bundle.js:用于webpack导入。

chunk.js:用于.png文件等块状片段。

2)所有这些

3)由于在一个新项目中,脚本数组将为空,因此不会生成任何包。