Angular 如何构建角度包
角度构建生成了哪些不同的文件?我注意到其中有6个Angular 如何构建角度包,angular,webpack,Angular,Webpack,角度构建生成了哪些不同的文件?我注意到其中有6个mainpolyfill运行时脚本供应商样式。我想Angular使用webpack进行构建。但我找不到任何资源可以解释这些文件包含的内容。例如,main.js是否包含我的应用程序代码?如果我使用的是第三方npm软件包,它们是放在scripts.js还是vendor.js中?为什么有一个.js文件用于样式(我认为样式是.css的东西)。你可以在这个网站上阅读更多信息 在最新版本中,实现了一个,因此它生成了两个文件,一个在ES5中,另一个在ES2015
main
polyfill
运行时
脚本
供应商
样式
。我想Angular使用webpack
进行构建。但我找不到任何资源可以解释这些文件包含的内容。例如,main.js
是否包含我的应用程序代码?如果我使用的是第三方npm
软件包,它们是放在scripts.js
还是vendor.js
中?为什么有一个.js
文件用于样式
(我认为样式
是.css
的东西)。你可以在这个网站上阅读更多信息
在最新版本中,实现了一个,因此它生成了两个文件,一个在ES5中,另一个在ES2015中
在文件名和扩展名之间还有一个散列。在差异加载的情况下,文件后面还有一个js版本,用-
分隔,因此文件名看起来像名称jsversion.hash.js
runtime.js-在链接中,它被称为inline
,在Angular 6.0中被重命名为runtime
这是一个网页包加载器。一个包含网页包实用程序的小文件
需要加载其他文件
vendor.js
此文件包含导入应用程序(app.module)的所有库,包括角度库。导入应用程序的第三方库也会编译到此文件中(例如lodash、moment等)
警告:此文件在开发人员编译(ng构建)后非常庞大,因为它包含在浏览器中编译Angular所需的所有内容。总是
在将应用程序发布到之前,请运行prod build(ng build–prod)
生产。prod构建运行提前(AoT)编译和
摇树
main.js
这就是行动发生的地方。此文件包含您的所有代码
polyfills.js
这个应该是不言自明的。它包含您在polyfills.ts文件中声明的所有polyfills
scripts.js
这一点也应该不言自明。它包含您在angular.json
文件的脚本部分声明的脚本
1.js或2.js或…-这个数字在增加。如果没有延迟加载的模块,则不会生成此文件
这是一个包含延迟加载模块的文件,与您拥有的许多文件将生成的延迟加载模块一样多
哪个版本的angular?角度cli?角度6,cli 6.2.2倾斜。有趣的是,我没有生成
1.js
。另外,scripts.js
的区别/用途是什么。它不是与vendor.js
重复吗?具体地说,我正在尝试解决这个问题,我认为它与不正确使用/调用脚本有关。你能看看这个吗?你不必有1.js
,它只在你有一些模块延迟加载时生成。明白了。如果你有机会的话,请再看看另一个问题,我正在面对,明白了。如果你有机会,请看看我面临的另一个问题