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

pnpm安装依赖遇React peer依赖不兼容,求更优解决方案

问题

使用pnpm安装包时遇到以下peer依赖错误:

ERR_PNPM_PEER_DEP_ISSUES  Unmet peer dependencies

tinacms
└─┬ @tinacms/toolkit
  ├─┬ @react-aria/listbox
  │ └── ✕ unmet peer react@"^16.8.0 || ^17.0.0-rc.1": found 18.2.0
  └─┬ @udecode/plate-headless
    └─┬ @udecode/plate-alignment
      └─┬ @udecode/plate-core
        └─┬ @radix-ui/react-slot
          ├── ✕ unmet peer react@"^16.8 || ^17.0": found 18.2.0
          └─┬ @radix-ui/react-compose-refs
            └── ✕ unmet peer react@"^16.8 || ^17.0": found 18.2.0

项目已使用React 18.2.0,无法重复安装该依赖。尝试过创建别名(因项目依赖均以react导入无法修改)、配置pnpm overrides(如下)但警告仍存在:

"pnpm": {
  "overrides": {
    "react": "18.2.0"
  }
}

不想通过设置strict-peer-dependencies=false解决,求更优雅的办法?

解决方法

1. 精准覆盖子依赖的peer要求

针对报错的具体依赖,强制它们适配React 18版本,修改package.json中的pnpm overrides:

"pnpm": {
  "overrides": {
    "@react-aria/listbox>react": "18.2.0",
    "@radix-ui/react-slot>react": "18.2.0",
    "@radix-ui/react-compose-refs>react": "18.2.0"
  }
}

也可以用批量配置的写法:

"pnpm": {
  "overrides": {
    "react": {
      "@react-aria/listbox": "18.2.0",
      "@radix-ui/react-slot": "18.2.0",
      "@radix-ui/react-compose-refs": "18.2.0"
    }
  }
}

2. 用peerDependencyRules放宽特定检查

在package.json中配置peerDependencyRules,仅忽略指定依赖的React版本peer限制,保留全局严格模式:

"pnpm": {
  "peerDependencyRules": {
    "ignoreMissing": [
      "react>@react-aria/listbox",
      "react>@radix-ui/react-slot",
      "react>@radix-ui/react-compose-refs"
    ]
  }
}

或者允许这些依赖接受React 18版本:

"pnpm": {
  "peerDependencyRules": {
    "allowedVersions": {
      "@react-aria/listbox>react": "^18.2.0",
      "@radix-ui/react-slot>react": "^18.2.0",
      "@radix-ui/react-compose-refs>react": "^18.2.0"
    }
  }
}

3. 升级依赖到兼容React 18的版本

检查并更新报错的子依赖,通常新版本会适配React 18:

pnpm update @react-aria/listbox @radix-ui/react-slot @radix-ui/react-compose-refs --latest

如果这些依赖是被@tinacms/toolkit间接引入的,尝试升级tinacms到最新版本,看其是否已依赖兼容React 18的子版本:

pnpm update tinacms --latest

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 22:31:16