npm安装报错:React 18不兼容react-canvas-draw,如何无需降级解决?
React 18下安装react-canvas-draw的依赖冲突解决办法
你遇到的问题是react-canvas-draw@1.2.1仅兼容React 16.x/17.x,但你不想降级到旧版React,试试这些解决办法:
用npm兼容参数直接安装
npm从v7版本开始会严格校验peer依赖版本,添加--legacy-peer-deps参数即可跳过该校验,执行命令:npm install react-canvas-draw --legacy-peer-deps多数情况下react-canvas-draw能在React 18环境正常运行,只是官方未更新peer依赖声明。
改用yarn安装
Yarn对peer依赖的校验默认更宽松,不会因版本不匹配直接报错,仅给出警告,直接执行:yarn add react-canvas-draw强制覆盖peer依赖版本(npm 8.3+)
在项目的package.json中添加overrides字段,强制让react-canvas-draw使用当前项目的React版本:"overrides": { "react-canvas-draw": { "react": "$react", "react-dom": "$react-dom" } }完成配置后执行
npm install即可完成安装。更换兼容React 18的替代库
如果上述方法导致运行时报错,可以考虑替换为支持React 18的绘图库,比如react-sketch-canvas。
内容的提问来源于stack exchange,提问作者dev_adm
相关产品推荐
相关产品推荐

