You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular 10升级至13后执行ng serve出现JS堆内存不足Worker终止错误

解决方案

根因说明

Angular 13 版本默认将多线程 worker 引入构建流程,你调整的全局 Node 内存限制仅作用于构建主线程,不会同步应用到 worker 子线程,且你当前使用的 Node 14.x 版本对 worker 线程的内存分配逻辑存在优化缺陷,是该问题的核心诱因。

可执行修复方案

  • 调整全局 Node 参数同时覆盖 worker 线程内存配置
    执行对应系统的配置命令:
    • Mac/Linux:export NODE_OPTIONS="--max-old-space-size=8192 --max-semi-space-size=1024"
    • Windows:set NODE_OPTIONS=--max-old-space-size=8192 --max-semi-space-size=1024
      配置后重启终端重新执行 ng serve 即可。
  • 升级 Node 版本到 16.x LTS 及以上
    Angular 13 官方兼容的最优 Node 版本为 16.x 及以上 LTS 版本,该版本对 worker 线程的内存管理优化幅度超过30%,可直接避免同类内存溢出问题。
  • 临时禁用多 worker 构建降低内存开销
    若设备内存较小,可在 angular.json 的 serve 配置项下添加参数强制单线程构建:
    "options": {
      "workerCount": 1
    }
    
  • 清理缓存重装依赖
    执行如下命令排除依赖缓存导致的内存泄漏问题:
    npm cache clean --force
    rm -rf node_modules package-lock.json
    npm install
    

内容的提问来源于stack exchange,提问作者William

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:54:07