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

Angular11升级至12时报cb.apply is not a function错误该如何解决

错误根因分析
  • 版本兼容缺陷:报错日志显示执行命令时调用的npm版本为v5.1.0,该版本和你本地安装的Node.js v14存在明显兼容问题,旧版本graceful-fs依赖的polyfill逻辑在高版本Node环境下会直接触发cb.apply is not a function异常
  • 工具调用逻辑问题:你日常使用yarn作为包管理器,但执行npx命令时默认调用了项目node_modules目录下自带的旧版本npx、npm依赖,你之前删除全局npm缓存的操作不会作用到项目本地的旧依赖上,因此无法解决问题
解决方案
  • 优先使用yarn原生等价命令执行升级,完全避开调用旧版npm的问题,执行命令如下:
    yarn dlx @angular/cli@12 update @angular/core@12 @angular/cli@12
    说明:yarn dlx是yarn生态中对应npx的工具,会直接拉取指定版本的Angular CLI执行升级逻辑,不会触发项目本地旧npm依赖的兼容问题
  • 若上述命令执行后仍有异常,按以下步骤操作:
    • 删除项目根目录下的node_modules文件夹和yarn.lock文件
    • 执行yarn install重新安装全量依赖
    • 再次执行上述的yarn dlx升级命令
  • 如果你需要兼容npm使用场景,可先将全局npm版本升级到v7及以上,执行npm install -g npm@latest后再重试最初的npx升级命令即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 19:15:05