JavaScript&TypeScript

NestJS - class-validator 데코레이터

hjkang

class-validator는 데코레이터를 사용하여 간편하게 유효성 검증을 할 수 있는 라이브러리이다.

class-validator의 데코레이터 종류를 알아보자!

 

 

데코레이터 설명
@IsEmpty() 값이 null, undefined, "" 인지 확인
@IsNotEmpty() 값이 null, undefined, "" 이 아닌지 확인
@IsIn(values: any[]) 값이 values 배열에 있는 값인지 확인
@IsNotIn(values: any[]) 값이 values 배열에 없는 값인지 확인
@IsBoolean() 값이 boolean 인지 확인
@IsDate() 값이 Date 인지 확인
@IsString() 값이 문자열인지 확인
@IsNumber(options: IsNumberOptions) 값이 number인지 확인
@IsInt() 값이 Interger인지 확인
@IsArray() 값이 배열인지 확인
@Min(min: number) 값이 min 값보다 크거나 같은지 확인
@Max(max: number) 값이 max 값보다 작거나 같은지 확인
@Contains(seed: string) 문자열에 매개변수로 주어진 seed 값이 포함인지 확인
@NotContains(seed: string) 문자열에 매개변수로 주어진 seed 값이 미포함인지 확인
@IsAlpha() 문자열이 a-zA-Z로만 되어 있는지 확인
@IsAlphanumeric() 문자열이 숫자나 알파멧인지 확인
@IsAscii() 문자열이 ASCII 문자인지 확인
@IsEmail(options?: IsEmailOptions) 문자열이 이메일인지 확인
@IsFQDN(options?: IsFQDNOptions) 문자열이 도메인 주소인지 확인(예: domain.com)
@IsIP(version?: "4"|"6") 문자열이 IP 주소인지 확인(버전 4 또는 6)
@IsJSON() 문자열이 유효한 JSON 인지 확인
@IsObject() 문자열이 객체인지 확인(null, 함수, 배열은 false 반환)
@Length(min: number, max?: number) 문자열 길이의 최대 최솟값 확인
@MinLength(min: number) 문자열의 최소 길이 확인
@MaxLength(max: number) 문자열의 최대 길이 확인
@Matches(pattern: RegExp, modifiers?: string) 문자열이 정규표현식에 매치되는 값인지 확인
@ArrayNotEmtpy() 배열이 빈 배열이 아닌지 확인
@ArrayUnique(identifier?: (o) => any) 배열에 있는 모든 값들이 고유한 값인지 확인. 참조를 통해 비교 

 

 


참고

- Node.js 백엔드 개발자 되기