React项目yarn安装依赖报EPERM及npm cb.apply错误如何解决
问题根因
从报错日志可明确两个核心问题:
- 本地npm版本(v5.3.0)过于老旧,与Node.js v16.13.0严重不兼容,是触发
cb.apply is not a function报错的直接原因 - 拉取依赖时出现
EPERM报错是因为node-sass相关文件被进程占用,或者权限不足导致无法修改/删除文件
解决方案
按以下步骤操作即可解决:
- 修复npm不兼容问题
- 关闭所有打开的终端、代码编辑器
- 打开资源管理器,进入
C:\Users\你的系统用户名\AppData\Roaming路径,找到并彻底删除npm、npm-cache两个文件夹(Node.js v16自带适配版本的npm,删除旧的全局npm文件后会自动使用内置版本) - 重启终端,执行
npm -v验证npm可用,此时会正常显示对应版本号
- 清理项目异常缓存
- 进入你的React项目根目录,删除
node_modules文件夹、yarn.lock、package-lock.json文件 - 若删除时提示文件被占用,打开任务管理器结束所有
node.exe相关进程后再操作
- 进入你的React项目根目录,删除
- 重新安装依赖
- 用管理员权限打开终端,执行
npm install -g yarn全局安装yarn - 进入项目根目录,依次执行
yarn install、yarn add @material-ui/icons即可完成依赖安装
- 用管理员权限打开终端,执行
内容的提问来源于stack exchange,提问作者Hamza ÜNSAL
相关产品推荐
相关产品推荐

