创建React Native项目报npm ERESOLVE peer依赖冲突错误求助
问题根因
该报错由两类问题共同触发:
- npm 7及以上版本默认开启严格peer依赖校验,对依赖树的版本匹配要求远高于旧版npm
- 全局安装的旧版
@react-native-community/cli@6.4.0是适配React Native 0.67.x版本的工具,初始化新项目时拉取的React Native 0.69.1要求React 18.0.0作为对等依赖,全局旧CLI的依赖树和新项目的版本要求直接冲突,触发依赖解析失败。
该问题和本地已存的旧RN项目目录、Node.js重装、Homebrew残留文件无关联。
可落地排查解决步骤
- 完全卸载全局残留的旧版RN相关工具
执行以下命令清理全局错误版本的依赖:
执行完成后运行npm uninstall -g react-native react-native-cli @react-native-community/clinpm list -g --depth=0,确认输出结果中不存在上述三个包的残留记录。 - 清理npm本地缓存,避免旧版本包缓存干扰安装流程
执行命令:npm cache clean --force - 跳过全局CLI,直接通过npx调用对应版本的初始化工具创建项目,从根源避免全局版本冲突:
npx react-native@0.69.1 init 你的项目名称 --version 0.69.1 - 临时兜底方案(仅用于应急,不推荐常规使用):如果上述操作仍偶发校验报错,可以在初始化命令后追加参数临时关闭严格peer依赖校验:
npx react-native@0.69.1 init 你的项目名称 --version 0.69.1 -- --legacy-peer-deps
注意:不要随意使用
--force参数强制跳过依赖校验,该操作会破坏依赖树的版本匹配关系,后续大概率出现原生编译失败、第三方库兼容性异常等隐性问题。
内容的提问来源于stack exchange,提问作者Nero
相关产品推荐
相关产品推荐

