Nestjs applyDecorators 用于多个装饰器

Nestjs applyDecorators for multiple decorators

我想使用从 @nestjs/common

导入的 applyDecorators 创建自定义装饰器
...

applyDecorators(
  @Field(),
  @MinLength(2)
)

...

但是我遇到了 typescript lint 错误。如何创建一个包含多个装饰器的自定义装饰器?

https://docs.nestjs.com/custom-decorators

"class-validator": "^0.11.0"
"@nestjs/common": "^7.0.9"

您可以使用 applyDecorators 方法定义自定义装饰器方法。

applyDecorators 方法接受 PropertyDecorator 作为参数。所以请务必将它们转换为 PropertyDecorator.

export const NameField = (options?: FieldOptions) =>
  applyDecorators(
    Field() as PropertyDecorator, // convert to PropertyDecorator
    MinLength(2) as PropertyDecorator // convert to PropertyDecorator
  )
)