You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用npx react-native init创建项目时出现ERESOLVE依赖报错如何解决

React Native 初始化 ERESOLVE peer依赖报错解决方法

问题复现

执行项目初始化命令:
npx react-native init myproject
运行过程中输出以下报错信息,最终初始化流程中断:

ERESOLVE overriding peer dependency
npm WARN While resolving: react-shallow-renderer@16.14.1
npm WARN Found: react@18.0.0
npm WARN node_modules/react
npm WARN   peer react@"18.0.0" from react-native@0.69.1
npm WARN   node_modules/react-native
npm WARN     react-native@"*" from the root project
npm WARN     1 more (@react-native-community/cli)
npm WARN   1 more (use-sync-external-store)

报错根因是 npm 7.0 及以上版本默认开启严格的peer依赖版本校验,React Native 0.69.x 发布时,部分关联的第三方依赖还未同步更新自身的peer依赖声明,触发版本校验冲突,直接打断初始化流程。

可行解决方案

按操作成本从低到高排序:

  • 直接指定无依赖冲突的稳定版React Native初始化,避开0.69.x的已知问题,执行命令:
    npx react-native init myproject --version 0.68.2
    该版本所有关联依赖的版本声明完全匹配,不会触发peer校验报错,初始化完成后如果需要升级版本,再对照官方版本匹配表操作即可。
  • 临时关闭npm的严格peer依赖校验,再执行初始化:
    先执行配置命令修改npm解析规则:
    npm config set legacy-peer-deps true
    配置生效后正常执行初始化命令即可完成项目创建。后续如果需要恢复npm默认的严格校验逻辑,执行 npm config set legacy-peer-deps false 即可。
  • 如果已经生成了半截项目文件,不用删了重来,进入项目根目录按以下步骤操作:
    1. 删掉目录下的 node_modules 文件夹和 package-lock.json 文件
    2. 执行带兼容参数的依赖安装命令:
      npm install --legacy-peer-deps
    3. 依赖安装完成后,即可正常执行启动命令运行项目。

注意:React和React Native的版本存在严格的绑定对应关系,初始化完成后不要随意单独升级React版本,否则会直接导致项目无法启动。

内容的提问来源于stack exchange,提问作者ai Gooner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 12:39:15