为什么type-graphql无法推断出来自类属性的字符串类型?

时间:2020-09-12 19:23:23

标签: typescript graphql typegraphql

我有一个类型/类Foo,其属性为bar的属性string

class Foo {
    bar: string
}

如果我使用Arg(来自type-graphql)而不显式传递类型,而将参数类型传递给string。一切正常,例如

doSomething(
  @Arg('bar') bar: string,
){
  // whatever
}

但是,如果我传递了bar的{​​{1}}属性的类型(它是字符串),则它不起作用,例如

Foo

通过“是行不通的”,我的意思是,它使我无法推断错误

无法从TypeScript反射系统推断GraphQL类型。您需要为“ FooResolver”类的“ doSomething”的名为“ bar”的参数提供显式类型

为什么无法推断类型?它不应该能够推断出类型吗?

1 个答案:

答案 0 :(得分:0)

为什么无法推断类型?它不应该能够推断出类型吗?

这是TypeScript编译器的限制-发出的反射元数据仅限于简单和显式的情况,例如: string会反射到运行时String

对于泛型和查找,如何将类型值转换为运行时值?