安装@apollo/react-hooks遇peer依赖警告:已装graphql@15.0仍提示需^14.3.1
解决
npm install @apollo/react-hooks时的各类警告问题 我来帮你逐个拆解并解决这些遇到的警告问题:
1. Apollo相关包的GraphQL peer依赖警告
问题:@apollo/react-common@3.1.4等多个Apollo包提示需要peer依赖
graphql@^14.3.1,但你已经安装了graphql@15.0却未被识别。
原因:这里的^14.3.1版本范围指的是14.x系列的所有版本(不包含15.0及以上),npm从7.x版本开始会严格校验peer依赖的版本匹配逻辑,所以哪怕你装了更高版本的GraphQL,也会触发这个警告。
解决方法:
- 方案一(优先推荐):先确认你用的Apollo React Hooks 3.x版本是否兼容GraphQL 15.x。如果官方文档明确支持,你可以直接忽略警告,或者用下面的命令绕过严格的peer依赖检查:
npm install @apollo/react-hooks --legacy-peer-deps - 方案二:如果不想绕过校验,可以降级GraphQL到14.x的最新兼容版本:
npm install graphql@^14.7.0
2. graphql-tag@2.10.3的版本匹配警告
旧版本的graphql-tag对GraphQL的版本支持范围比较窄,升级到最新版就能解决这个问题:
npm install graphql-tag@latest
3. tsutils@3.17.1缺失typescript依赖的警告
tsutils是依赖TypeScript的工具库,你的项目里没装TypeScript才会触发这个警告。直接安装TypeScript即可(如果项目不需要TS,也可以卸载tsutils):
npm install typescript --save-dev
如果有特定版本要求,你可以查看tsutils@3.17.1的peer依赖说明,安装对应版本的TypeScript(一般要求≥3.0.0)。
4. fsevents平台不支持的提示
这个完全是正常现象!fsevents是专门给MacOS(darwin平台)用的文件系统监听工具,Windows(win32/x64)环境下npm会自动跳过安装,不需要做任何处理,直接忽略这个提示就行。
内容的提问来源于stack exchange,提问作者user2371290
相关产品推荐
相关产品推荐

