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

Mac Big Sur M1执行npm install报ERESOLVE及node-gyp构建错误怎么解决?

问题解决步骤

1. 处理依赖版本冲突(ERESOLVE报错根源)

报错的核心原因是项目根目录依赖的@angular/forms@11.2.14,和ngx-typesafe-forms@1.5.1要求的对等依赖@angular/forms@^12.0.0版本不匹配,可选择两个方案解决:

  • 方案一:升级项目的@angular/forms到12.x版本,匹配ngx-typesafe-forms的依赖要求,执行命令:
npm install @angular/forms@12.x --save
  • 方案二:锁定ngx-typesafe-forms的版本到适配Angular 11的旧版本,ngx-typesafe-forms@1.4.3是支持Angular 11的最后版本,直接修改package.json中该包的版本为固定值1.4.3,去掉版本号前的^前缀避免自动升到1.5.x版本。

2. 处理M1芯片下node-sass编译报错

第二个报错是旧版本node-sass不兼容Node16+和M1架构导致的原生编译失败,按优先级选择以下方案:

  • 优先方案:把项目中的node-sass替换成官方推荐的sass(即dart-sass,纯JS实现无原生编译依赖,完全兼容node-sass语法),执行命令:
npm uninstall node-sass
npm install sass --save-dev
  • 若项目必须使用node-sass,需先匹配版本对应关系:node-sass@6.0+才支持Node16,低于该版本的node-sass无法在Node16环境下编译;M1芯片运行更低版本node-sass需要通过Rosetta 2打开终端再执行安装命令,或者切换到Node14版本安装对应适配的node-sass版本。
  • 临时规避参数:确认依赖版本兼容后,执行安装时可附加参数:
npm install --legacy-peer-deps --unsafe-perm

3. 清理缓存重试

如果操作后仍有异常,先清理npm缓存再重新安装:

npm cache clean --force
rm -rf node_modules package-lock.json
npm install

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 04:09:02