我的解析器中有以下查询:
import { Args, Query } from '@nestjs/graphql';
import { Collection, FilterQuery, FindOneOptions } from 'mongodb';
...
@Query(returns => [Recipe])
async recipes(
@Args() query: FilterQuery<Collection>,
@Args() options: FindOneOptions
): Promise<Recipe[]> {
return this.recipeService.findAll();
}
我试图在查询配方时允许使用query
和options
的参数。
我遇到的两个问题如下:
错误:您需要为RecipeResolver#recipes参数#1提供显式类型!
@Args
声明式,就像@Args({type: () => FilterQuery}) query: FilterQuery<Collection>
这样,我得到:
“ FilterQuery”仅引用一种类型,但在此处被用作值。
答案 0 :(得分:1)
您需要创建一个看起来像您尝试使用的FilterQuery
和FindOneOptions
的类,但是在其属性上使用type-graphql
类型修饰符,以便GraphQL服务器可以知道如何期待FilterQuery
和FindOneOptions
的格式。