项目里面使用 yarn 进行的依赖安装,版本是 V1
今天我发现安装的 antd 的部分依赖如 rc-align,rc-select 等,都嵌套安装了 react16.14.0 和 react-dom17.0.1,但我看这些包的 package.json 中都是有peerDependencies 配置的,如下
{
peerDependencies: {
'react': '>=16.9.0',
'react-dom': '>=16.9.0'
}
}
即便如此,这些包还是单独安装了相关依赖。。。
导致在 使用 antd 的 select 组件时,react 的版本与 项目的 react 版本不一致,导致依赖冲突进而报错,请问有大佬遇到过类似的情况没有
但同样的情况使用 npm v6 或者 pnpm 就没问题,难道说是 yarn v1 的 bug ?
破案了,是我们一个 内部 npm 包把 react,react-dom 和 antd 写到了 dependencies 里面,导致 antd 中的 rc-* 等包最终依赖的是内部 npm 包的 react 版本。。。