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

Turborepo+Docusaurus环境下React版本冲突问题求助

解决Turborepo+Docusaurus+Next.js的依赖冲突问题

问题根源

你遇到的是monorepo场景下的依赖版本冲突:Docusaurus安装时引入的React依赖版本,和Next.js要求的>=18.2.0版本不匹配,导致npm解析依赖时出现大量警告,同时Next.js因找不到符合要求的React版本无法启动。

解决步骤

1. 统一根目录的React依赖版本

在项目根目录的package.json中,添加或修改react和react-dom的版本为Next.js要求的18.2.0,确保整个monorepo使用统一版本:

"dependencies": {
  "react": "^18.2.0",
  "react-dom": "^18.2.0"
}

如果根目录原本没有这两个依赖,直接添加即可;如果已有,修改版本号为^18.2.0。

2. 添加npm Overrides强制版本统一

在根目录package.json中新增overrides字段,强制所有子项目使用指定的React版本,彻底解决依赖解析冲突:

"overrides": {
  "react": "^18.2.0",
  "react-dom": "^18.2.0"
}

3. 清理旧依赖和缓存

执行以下命令清理现有依赖和npm缓存,避免残留问题:

# 删除根目录和所有子项目的node_modules
rm -rf node_modules apps/*/node_modules
# 清除npm缓存
npm cache clean --force

4. 重新安装依赖

回到项目根目录,重新执行安装命令:

npm install

5. 验证Next.js应用启动

进入Next.js应用目录(比如apps/web),尝试启动:

npm run dev

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 14:22:24