typescript - 如何向 graphql resolver 映射添加类型绑定
有没有一种标准的方式将类型绑定添加到 GraphQL 解析器映射中?
sampleResolver.ts:
export default {
sampleResolver: (parent, args, context, info) => {
...
return ...
}
};
例如
sampleResolver<...>: (parent, args, context, info) => ...
or
sampleResolver: (parent, args, context, info): ... => ...
or
sampleResolver: (parent: ..., args: ..., context:..., info:...) => ...
答案#1
我不认为 apollo-server-express 已经为解析器实现了类型定义,如本问题中所示。不过,你可以尝试使用 graphql-code-generator 来自动为你的模式、解析器等生成类型定义。
答案#2
有多种方法可以做到这一点,查看更多。在你的情况下,我认为这会比较适合:
sampleResolver.ts:
// Interface checking for return
export interface SampleResolver {
[name: string]: any
}
// Then assign Interface at return
export default {
sampleResolver: (parent, args, context, info) => {
...
return <SampleResolver>...
}
};
注意:export 用于在其他文件中进行类型检查。
otherFiles.ts
import { SampleResolver } from 'sampleResolver';
var response: SampleResolver;
