【发布时间】:2021-10-07 04:15:20
【问题描述】:
我需要有条件地验证 Nestjs 中的输入,类验证器。有一个 validateif 装饰器,但是如何在 else 部分添加另一个验证?例如:如果第一个输入是电子邮件,如果是电话匹配我的正则表达式,则使用电子邮件装饰器。
@IsNotEmpty()
@IsEnum(UsernameType)
public type: UsernameType;
// enum has two value: phone and email
@IsNotEmpty()
@ValidateIf(o => o.type === UsernameType.PHONE )
@Matches(/(09)[0-9]{9}/)
username: number;
@IsNotEmpty()
@ValidateIf(o => o.type === UsernameType.EMAIL)
@IsEmail()
username: string;
【问题讨论】:
标签: typescript nestjs class-validator