javascript 如何减小vendor.js在Angular 2,4,6,7,8,9,10,11,12,13,14,15,16中的大小?

cotxawn7  于 2023-02-02  发布在  Java
关注(0)|答案(5)|浏览(133)

Angular CLI创建vendor.js,我不知道为什么和它的用途是什么??这个文件的大小约为3.2MB一个新的应用程序!!
此文件是否包含 *Angular 6 Javascript源代码 *?
你不认为这是在互联网上加载低速连接的大文件吗?

eanckbw9

eanckbw91#

此文件包括你添加到项目中的所有库。如果你在生产模式下生成应用,则文件大小会较小。

ng build --prod
bihw5rsg

bihw5rsg2#

试试看

ng build --prod --aot --vendor-chunk --common-chunk --delete-output-path --buildOptimizer

我减少了我的vendor.**.js从12mb到2mb

ymzxtsji

ymzxtsji3#

您可以通过指定--build-optimizer标志完全删除该文件,而不是减小它,cli将从构建输出中禁用该文件。
CLI现在将把供应商代码捆绑到main.js包中,这也将启用uglification以减小大小。
因此,您将看到main.js包的大小略有增加,与供应商区块的大小相比,这是最小的

z2acfund

z2acfund4#

您可能还想更新package.json中的构建脚本以默认生成一个prod构建。我在部署到Heroku时遇到了这种情况,因为它会自动运行'npm build'。默认情况下,'npm build'运行以下脚本:

ng build

如果将其更新为

ng build --prod

在package.json中,Heroku/AWS/Azure将在部署时创建一个生产构建。

rggaifut

rggaifut5#

在angular.json配置文件中,您需要更改值:

"production": {
          "fileReplacements": [
            {
              "replace": "src/environments/environment.ts",
              "with": "src/environments/environment.prod.ts"
            }
          ],
          "aot": true,
          "optimization": true,
          "outputHashing": "all",
          "sourceMap": false,
          "namedChunks": false,
          "extractLicenses": true,
          "vendorChunk": false,
          "buildOptimizer": true

相关问题