安装React Native Elements报ERESOLVE依赖冲突错误如何解决
报错原因
这是npm 7及以上版本默认开启严格peer依赖校验导致的版本冲突:你通过react-native init初始化的新项目默认预装了react-native-safe-area-context@4.3.1,但你安装的@rneui/base@4.0.0-rc.4版本,强制要求peer依赖为react-native-safe-area-context@^3.1.9,版本号不满足要求就会直接终止安装流程,和你初始化项目的操作没有关系。
修复方案
按推荐优先级从高到低排列:
- 安装匹配版本的依赖(无隐性兼容风险,优先选)
先卸载当前项目里的4.x版本safe-area-context,安装RNE rc版本要求的3.x稳定版,再重新安装RNE相关包,依次执行以下命令:
安装完成后如果是iOS项目,进入ios目录执行npm uninstall react-native-safe-area-context npm install react-native-safe-area-context@3.4.1 npm install @rneui/themed @rneui/basepod install同步原生依赖即可正常使用。 - 安装RNE最新正式版
你当前安装的是RNE的预览rc版本,后续发布的正式稳定版已经完成了对react-native-safe-area-context 4.x版本的适配,直接安装最新正式版即可解决冲突:npm install @rneui/themed@latest @rneui/base@latest - 临时跳过peer依赖校验(仅适合快速测试,不推荐生产环境使用)
安装时携带--legacy-peer-deps参数,让npm沿用v6及之前版本的宽松依赖解析逻辑,不强制校验peer依赖版本匹配:
注意:该方式可能因为版本实际不兼容,运行时出现API找不到、组件渲染报错等问题,出现相关问题时请切换回前两种方案。npm install @rneui/themed @rneui/base --legacy-peer-deps
内容的提问来源于stack exchange,提问作者skoleosho97
相关产品推荐
相关产品推荐

