繁体   English   中英

如何根据 typescript nestjs 中的字符串枚举验证字段

[英]how do I validate a field against an enum of strings in typescript nestjs

我有一个时区枚举,如下所示

export enum Timezones  {
    'Europe/Andorra',
    'Asia/Dubai',
    'Asia/Kabul',
    'America/Antigua'
}

在 DTO 文件中,我正在根据枚举验证时区字段,如下所示

  @IsEnum(Timezones, { each: true })
  timezone: string;

但验证不起作用,并且也在接受其他值。

这个枚举

export enum Timezones  {
    'Europe/Andorra',
    'Asia/Dubai',
    'Asia/Kabul',
    'America/Antigua'
}

被解释为如图所示

export enum Timezones  {
    0 : 'Europe/Andorra',
    1 : 'Asia/Dubai',
    2 : 'Asia/Kabul',
    3 : 'America/Antigua'
}

所以你实际上是在根据索引 0,1,2,3 进行验证......我不确定要解决这个问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM