graphql-tools@8.1.0无法导入IResolvers是否和Apollo 3版本有关?
问题原因说明
这个报错和Apollo 3版本无关,是graphql-tools v8版本的包结构调整导致的:
graphql-tools v7及更早版本是单体包,确实支持直接从顶层导出IResolvers接口v8版本开始官方对包做了拆分,所有通用类型定义都迁移到了独立的@graphql-tools/utils子包,原graphql-tools顶层不再导出该接口
解决方案
你可以任选一种方式解决:
- 从拆分后的工具包导入
IResolvers
首先安装对应依赖:
然后修改导入语句为:npm install @graphql-tools/utils # 或yarn add @graphql-tools/utilsimport type { IResolvers } from '@graphql-tools/utils'; - 直接使用Apollo 3自带的Resolver类型
apollo-server-express v3已经内置了Resolver类型定义,不需要额外安装依赖,直接修改导入语句即可:import type { Resolvers } from 'apollo-server-express';
内容的提问来源于stack exchange,提问作者goat 9009
相关产品推荐
相关产品推荐

