如何在Angular中修复ng构建项目

时间:2019-11-12 03:59:37

标签: javascript node.js angular typescript angular8

如何在不对angular.json进行编辑的情况下将ng build project固定为angular

这是错误

Your global Angular CLI version (8.3.16) is greater than your local
version (8.1.3). The local Angular CLI version is used.

To disable this warning use "ng config -g cli.warnings.versionMismatch false".

chunk {0} runtime-es2015.52e4031f7f0d4c5547f5.js (runtime) 2.25 kB [entry] [rendered]
chunk {1} main-es2015.4e8665ff7ceef4e442ee.js (main) 4.62 MB [initial] [rendered]
chunk {2} polyfills-es2015.556027bb8b3cb9b5932e.js (polyfills) 173 kB [initial] [rendered]
chunk {3} styles.26e824d23ac01d2a1ba0.css (styles) 695 kB [initial] [rendered]
chunk {4} 4-es2015.823687dfc617d3f0d9c2.js () 3.43 kB  [rendered]
chunk {5} 5-es2015.f2106b47214935964e1d.js () 2.76 kB  [rendered]
Date: 2019-11-12T03:49:07.167Z - Hash: a28b3171138b993d899e - Time: 134373ms

WARNING in budgets, maximum exceeded for initial. Budget 2 MB was exceeded by 3.47 MB.

ERROR in budgets, maximum exceeded for initial. Budget 5 MB was exceeded by 483 kB.

enter image description here

提前谢谢。

当我达到92%时出现错误,并且错误在上面。

4 个答案:

答案 0 :(得分:3)

我不建议更改预算大小,因为这仅是为此目的-警告您您的捆绑包太大了。

您可能会考虑两件事:

  • 在初始屏幕中不可见的应用程序部分的延迟加载模块。您也可以将其与一些预加载策略结合使用,以免在随后的数据包提取中造成延迟。
  • 如果您已经完成上述操作,那么问题很可能出在某些(可能是新的)导入中,这会添加很多代码。您可能会在多个地方导入一些新库。当我们开始使用外部组件并将其导入3个不同位置时,我已经看到了这一点。解决方案是将组件放入延迟加载的模块中,然后导入需要它的模块。

希望这会有所帮助。

答案 1 :(得分:1)

更新:我看到您的编辑问题。为了简短回答,您只能使用webpack-bundle-analyzer来分析捆绑包的大小,并查看哪个软件包会影响您捆绑包的大小并将其删除,以进行修复

您可以在angular.json中看到预算配置如下

"budgets": [
    {
        "type": "initial",
        "maximumWarning": "2mb",
        "maximumError": "5mb"
    },
    {
        "type": "anyComponentStyle",
        "maximumWarning": "6kb",
        "maximumError": "10kb"
    }
],

删除它,您可以毫无错误地进行构建。但是我不建议您删除它,因为此配置会让您知道应用程序的大小,并且可以通过删除不必要的代码以减小大小来提高应用程序的性能。

您可以从此处获得更多信息: https://angular.io/guide/build#configuring-size-budgets

答案 2 :(得分:1)

您需要编辑 angular.json 文件。因为此角度项目默认生成。因此在您的控制台中显示警告。在angular.json文件的上方找到要修改的行。

wget https://github.com/jjhelmus/berryconda/releases/download/v2.0.0/Berryconda3-2.0.0-Linux-armv7l.sh
md5sum Berryconda3-2.0.0-Linux-armv7l.sh
bash Berryconda3-2.0.0-Linux-armv7l.sh

答案 3 :(得分:0)

angular.json

"budgets": [
   {
      "type": "initial",
      "maximumWarning": "3mb", <=== increase this value 
      "maximumError": "5mb" <==== may also increase this
   }
]
  

此处的预算表示不应限制的捆绑商品尺寸限制   超过了它,因为它影响了性能。