npm peer dependency 冲突怎么解决?
npm install 报 ERESOLVE unable to resolve dependency tree
解决方案
使用 --legacy-peer-deps 推荐
npm install --legacy-peer-deps
使用 npm 6 的宽松 peer dependency 解析策略。大多数情况下不会有实际问题。
适用场景:快速解决,不想深入排查
使用 --force
npm install --force
强制安装,忽略所有冲突。比 --legacy-peer-deps 更激进,可能导致运行时问题。
适用场景:--legacy-peer-deps 也不行时
手动解决版本冲突
# 1. 查看冲突详情
npm install 2>&1 | head -50
# 2. 找到冲突的包,安装兼容版本
npm install conflicting-package@compatible-version
# 3. 或在 package.json 中添加 overrides
"overrides": {
"conflicting-package": "^version"
}查看具体哪些包版本冲突,手动指定兼容版本或使用 overrides 覆盖。
适用场景:需要精确控制依赖版本