Typescript 您需要为';文件';属于';输入类型';班级| ;类型图ql

Typescript 您需要为';文件';属于';输入类型';班级| ;类型图ql,typescript,file-upload,graphql,typegraphql,Typescript,File Upload,Graphql,Typegraphql,我尝试创建一个GraphQL端点,在这里我可以上传一个文件 在我的解析器中,我使用自定义类型获取作为参数的上下文和数据 从'@pkg/schemas'导入{ReturnType,InputType} 从“@pkg/types”导入{Context} 从“graphql upload”导入{GraphQLUpload} ... @突变(()=>ReturnType) 上传文件和数据( @Ctx()Ctx:Context, @Arg('data',()=>GraphQLUpload,{descrip

我尝试创建一个GraphQL端点,在这里我可以上传一个文件

在我的解析器中,我使用自定义类型获取作为参数的上下文和数据

从'@pkg/schemas'导入{ReturnType,InputType}
从“@pkg/types”导入{Context}
从“graphql upload”导入{GraphQLUpload}
...
@突变(()=>ReturnType)
上传文件和数据(
@Ctx()Ctx:Context,
@Arg('data',()=>GraphQLUpload,{description:'File Upload'})数据:InputType,
):承诺{
返回函数WithMagic({ctx,data})
}
我的输入类型如下所示:

从'graphql upload'导入{FileUpload}
...
@InputType({说明:'上载数据输入'})
导出类输入类型{
@场({
可为空:是的,
描述:'文件上载',
})
@很高兴
文件:文件上传
}
但当我尝试运行代码时,会收到一条错误消息:


错误:无法从TypeScript反射系统推断GraphQL类型。您需要为“InputType”类的“file”提供显式类型。

要解决此问题,我更改了以下内容

@突变(()=>返回类型)
上传文件和数据(
@Ctx()Ctx:Context,
@Arg('data',{description:'File Upload'})数据:InputType,
):承诺{
返回函数WithMagic({ctx,data})
}
在我的回复类型中,我添加了

从'graphql upload'导入{FileUpload,GraphQLUpload}
...
@InputType({说明:'上载数据输入'})
导出类输入类型{
@字段(()=>图形上传)
@很高兴
文件:文件上传
}