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

React及React Router Dom升级后npm依赖冲突问题求助

解决React 18与react-notify-toast依赖冲突导致的ERESOLVE错误

问题核心

你遇到的ERESOLVE错误,根源是react-notify-toast@0.5.1的peer依赖仅支持React 0.14.x、15.x、16.x版本,和当前安装的React 18.2.0不兼容,npm的依赖解析器无法自动调和这个冲突。

可行解决方案

方案1:替换为兼容React 18的Toast组件库

react-notify-toast已多年未更新(最后一次更新在2018年),长期来看替换成维护活跃的库更可靠,推荐以下选项:

  • react-hot-toast
  • react-toastify

操作步骤:

  1. 卸载旧库:
    npm uninstall react-notify-toast
    
  2. 安装替代库(以react-toastify为例):
    npm install react-toastify
    
  3. 替换项目中Toast相关的调用代码为新库的API

方案2:用npm参数跳过peer依赖检查

如果暂时不想替换库,可通过npm参数强制跳过冲突检查,但可能引发运行时渲染异常,需谨慎使用:

  • 执行安装命令时添加--legacy-peer-deps:
    npm i node-fetch@latest --legacy-peer-deps
    
  • 或用--force强制安装:
    npm i node-fetch@latest --force
    

方案3:降级React到兼容版本

如果必须保留react-notify-toast的特定功能,可降级React到它支持的最高版本(16.14.0):

  1. 降级React和react-dom:
    npm install react@16.14.0 react-dom@16.14.0
    
  2. 重新安装所有依赖:
    npm install
    

错误信息解析

完整错误日志如下:

npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: react-notify-toast@0.5.1
npm ERR! Found: react@18.2.0
npm ERR! node_modules/react
npm ERR!   peer react@"^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" from @react-aria/ssr@3.4.0
npm ERR!   node_modules/@react-aria/ssr
npm ERR!     @react-aria/ssr@"^3.2.0" from @restart/ui@1.4.1
npm ERR!     node_modules/@restart/ui
npm ERR!       @restart/ui@"^1.4.1" from react-bootstrap@2.7.0
npm ERR!       node_modules/react-bootstrap
npm ERR!         react-bootstrap@"^2.7.0" from the root project
npm ERR!   peer react@">=16.8.0" from @restart/hooks@0.4.7
npm ERR!   node_modules/@restart/hooks
npm ERR!     @restart/hooks@"^0.4.7" from @restart/ui@1.4.1
npm ERR!     node_modules/@restart/ui
npm ERR!       @restart/ui@"^1.4.1" from react-bootstrap@2.7.0
npm ERR!       node_modules/react-bootstrap
npm ERR!         react-bootstrap@"^2.7.0" from the root project
npm ERR!     @restart/hooks@"^0.4.6" from react-bootstrap@2.7.0
npm ERR!     node_modules/react-bootstrap
npm ERR!       react-bootstrap@"^2.7.0" from the root project
npm ERR!   18 more (@restart/ui, react-bootstrap, react-dom, react-icons, ...)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer react@"^0.14.7 || ^15.0.0 || ^16.0.0" from react-notify-toast@0.5.1
npm ERR! node_modules/react-notify-toast
npm ERR!   react-notify-toast@"^0.5.1" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: react@16.14.0
npm ERR! node_modules/react
npm ERR!   peer react@"^0.14.7 || ^15.0.0 || ^16.0.0" from react-notify-toast@0.5.1
npm ERR!   node_modules/react-notify-toast
npm ERR!     react-notify-toast@"^0.5.1" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

关键提示点:

  • Could not resolve dependency: peer react@"^0.14.7 || ^15.0.0 || ^16.0.0" from react-notify-toast@0.5.1:明确标注了react-notify-toast的React版本限制
  • Conflicting peer dependency: react@16.14.0:npm尝试推荐一个符合要求的React版本,但与当前安装的18.2.0版本冲突

内容的提问来源于stack exchange,提问作者Yujin Dong

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 23:05:20