更换Node版本后执行npm install遇react-error-overlay依赖冲突问题
错误原因及解决办法
错误根源
你遇到的EOVERRIDE错误,是因为同时在devDependencies中直接声明了react-error-overlay依赖,又在overrides字段里对同一个包做了版本覆盖——npm不允许对同一个包同时存在直接依赖声明和版本覆盖规则,两者冲突导致安装失败。
解决步骤(二选一即可)
方案1:保留版本覆盖规则(推荐,适配react-scripts依赖问题)
- 打开
package.json,删除devDependencies中的"react-error-overlay": "^6.0.9"条目 - 保留
overrides字段里的配置:
这样npm会自动将项目依赖树中所有的"overrides": { "react-error-overlay": "6.0.9" }react-error-overlay强制替换为6.0.9版本,解决react-scripts自带旧版本的兼容问题。
方案2:保留直接开发依赖
- 删除
package.json中的overrides字段及其内容 - 保留
devDependencies里的"react-error-overlay": "^6.0.9"声明,此时npm会直接安装你指定的版本。
验证操作
修改完package.json后,重新执行npm install,错误即可消除。
内容的提问来源于stack exchange,提问作者Moctar Yonli
相关产品推荐
相关产品推荐

