有人可以帮忙吗?我有一个解析器查询,我传入了3个参数,简单的类型(数字)可以工作,但复杂的则不能,它只是一个空对象。
如果我实现IQuery(graphql创建了此方法),那么一切正常,但是我无法添加@Context,并且它说我不在接口中实现。
真的迷路了,也许我做错了什么?
这是我的解决+查询
@Resolver()
export class MyResolver {
@Query("testme")
testme(
@Context() context: any,
@Args("number1") number1: number,
@Args("number2") number2: number,
@Args({ name: "paginationInput", type: () => MyPaginationInput }) paginationInput: MyPaginationInput
) {
和我要传递的简单查询
{
testme(number1:1, number2: 1, paginationInput: {page:1, pageSize:10})
}
以上我尝试了@Args而不传递类型,而只是传递属性的名称,但仍然没有。它只是向我注入一个空对象,page和pageSize是空的-它们甚至不存在。
这是graphql查询和其他类型
type Query {
testme(number1: Int, number2: Int, paginationInput: PaginationInput): Boolean
}
input PaginationInput {
page: Int
pageSize: Int
}
这是我的打字稿课
export class MyPaginationInput {
page?: number
pageSize?: number
}
预先感谢
更新
如果我将签名更改为以下内容,那么它将起作用
testme(obj: any, args: any, context: any, info: any) {
args抱怨paginationInput填充了page和pageSize。