React Native安装react-three-fiber时出现react-dom@18.3.1依赖冲突错误
React Native + react-three-fiber ERESOLVE 依赖冲突解决指南
错误原因
- 项目当前使用的
react@18.2.0是React Native 0.74.3指定的固定版本 - 安装
@react-three/fiber时,它的可选peer依赖react-dom@18.3.1要求peer依赖必须为react@^18.3.1,与现有react版本不兼容 - React Native本身不需要react-dom,但npm的严格peer依赖校验规则触发了这个冲突
解决建议
方案1:使用--legacy-peer-deps跳过严格校验(最快捷)
由于react-dom是@react-three/fiber的可选依赖,React Native项目完全不会用到它,因此可以安全跳过这个冲突:
npm install --legacy-peer-deps
方案2:强制锁定react-dom兼容版本
在项目根目录的package.json中添加overrides字段,强制npm使用与react@18.2.0匹配的react-dom版本:
{ "overrides": { "react-dom": "18.2.0" } }
添加完成后重新执行安装命令:
npm install
方案3:升级React Native(谨慎操作)
如果需要严格保持依赖版本一致,可以等待React Native官方发布支持react@18.3.1的稳定版本,或尝试升级到最新RC版本。但此操作可能引入其他兼容性问题,不推荐作为紧急修复方案。
额外提示
React Native项目中react-dom属于冗余依赖,安装完成后可以检查package.json,若确认无需使用可手动移除,避免后续出现类似依赖冲突。
内容的提问来源于stack exchange,提问作者yun
相关产品推荐
相关产品推荐

