graphql-compose:需要输入类型的参数
graphql-compose: require argument that's an input type
下面是我正在编写的解析器示例,它使用 graphql-compose 来帮助构建我们的架构。
const createResolver = schemaComposer.createResolver({
kind: 'mutation',
name: 'SomeNameHere',
type: SomeTypeNameTC,
args: {
inputForm: InputFormITC,
},
resolve: ({ args }) => {
return createInputForm(args.inputForm);
}
});
我的问题是关于解析器的 args
部分。我如何要求架构中需要 inputForm
参数?例如,如果我要声明要传入的 ID,我可以通过添加感叹号在架构中要求 ID。
但是,如果我向 ITC 对象添加一个 (!),我相信这只是告诉 JS 需要该参数而不是 GraphQL 模式。
args: {
id: 'ID!'
inputForm: InputFormITC!
}
我通过类似 inputForm: 'InputFormInput!'
的方式解决了这个问题,但我更希望有实际的对象,以便更容易在我们的 IDE 中跳来跳去。这样的事情在 graphql-compose 中可能吗?
graphql-compose InputTypeComposer 显示输入类型的“NonNull”getter。要要求输入类型参数是必需的,语法如下所示:
args: {
inputForm: InputFormITC.NonNull
}
查看架构时,输入类型现在会显示一个感叹号 (!),表明它是必需的参数。
下面是我正在编写的解析器示例,它使用 graphql-compose 来帮助构建我们的架构。
const createResolver = schemaComposer.createResolver({
kind: 'mutation',
name: 'SomeNameHere',
type: SomeTypeNameTC,
args: {
inputForm: InputFormITC,
},
resolve: ({ args }) => {
return createInputForm(args.inputForm);
}
});
我的问题是关于解析器的 args
部分。我如何要求架构中需要 inputForm
参数?例如,如果我要声明要传入的 ID,我可以通过添加感叹号在架构中要求 ID。
但是,如果我向 ITC 对象添加一个 (!),我相信这只是告诉 JS 需要该参数而不是 GraphQL 模式。
args: {
id: 'ID!'
inputForm: InputFormITC!
}
我通过类似 inputForm: 'InputFormInput!'
的方式解决了这个问题,但我更希望有实际的对象,以便更容易在我们的 IDE 中跳来跳去。这样的事情在 graphql-compose 中可能吗?
graphql-compose InputTypeComposer 显示输入类型的“NonNull”getter。要要求输入类型参数是必需的,语法如下所示:
args: {
inputForm: InputFormITC.NonNull
}
查看架构时,输入类型现在会显示一个感叹号 (!),表明它是必需的参数。