NestJS + GraphQL - @InputType 中的可选数据(代码优先)

Jak*_*ián 5 graphql nestjs

我想让我在 graphql 突变中发送的一些数据可选不能为空。我正在使用代码优先的方法。

例如:

@InputType()
export class CreateUserDto {
  @Field()
  firstName?: string;
}
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用nullable参数或可能defaultValue,但这些选项在我的情况下都不是真正可用的。

另外,我知道有 Nest 的PartialType实用程序,但这意味着如果我是正确的,则需要使用该类创建另一个文件,但这似乎效率不高。

小智 5

在 @Field 装饰器中将 nullable 设置为 true,例如:

@Field({ 可空: true })

所以你的代码应该是:

@InputType()
export class CreateUserDto {
  @Field({ nullable: true })
  firstName?: string;
}
Run Code Online (Sandbox Code Playgroud)


小智 -1

use isOptional() validators

这会对你有所帮助。