我有一个类型/类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”的参数提供显式类型
为什么无法推断类型?它不应该能够推断出类型吗?
答案 0 :(得分:0)
为什么无法推断类型?它不应该能够推断出类型吗?
这是TypeScript编译器的限制-发出的反射元数据仅限于简单和显式的情况,例如: string
会反射到运行时String
。
对于泛型和查找,如何将类型值转换为运行时值?