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

如何让Yarn锁定@types/react的17.x版本以解决依赖冲突?

锁定@types/react 17.x版本的解决方案

针对子依赖用*导致Yarn自动升级到18.x的问题,按以下步骤操作:

  • 确保resolutions配置在根package.json
    你提到在子package.json里配置resolutions,这可能是问题核心。resolutions必须放在项目根目录的package.json中,而非子包。为了彻底锁定版本,建议直接指定具体版本号(避免^带来的模糊匹配),示例配置:

    {
      "resolutions": {
        "@types/react": "17.0.3",
        // 同步锁定@types/react-dom避免版本不兼容
        "@types/react-dom": "17.0.11"
      }
    }
    
  • 清除缓存并强制重装
    旧缓存可能导致配置不生效,执行以下命令:

    yarn cache clean
    yarn install --force
    
  • Yarn 2+版本的适配处理
    如果你使用的是Yarn Berry(Yarn 2及以上),resolutions已被overrides替代,需修改配置为:

    {
      "overrides": {
        "@types/react": "17.0.3"
      }
    }
    

    修改后同样执行yarn install --force。

  • 验证安装结果
    重装后执行yarn list @types/react确认版本为17.0.3;再用yarn why @types/react检查,所有子依赖应已被强制使用指定的17.x版本。

若仍不生效,可尝试删除项目根目录的yarn.lock文件后重新执行安装命令,排除锁文件的干扰。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 01:36:29