Zod로 관련 스키마 속성 검증

그래 조드가 뭔지 모르면 간단히 설명해줄게



Zod는 TypeScript 우선 스키마 선언 및 유효성 검사 라이브러리입니다.
"스키마"라는 용어는 단순한 문자열에서 복잡한 중첩 개체에 이르기까지 모든 데이터 유형을 광범위하게 지칭하기 위해 사용하고 있습니다.

Zod는 최대한 개발자 친화적으로 설계되었습니다. 목표는 중복 형식 선언을 제거하는 것입니다. Zod를 사용하면 유효성 검사기를 한 번 선언하면 Zod가 정적 TypeScript 유형을 자동으로 유추합니다. 간단한 유형을 복잡한 데이터 구조로 쉽게 구성할 수 있습니다.

지체하지 않고 바로 본론으로...




요청에 다른 필드도 전송된 경우에만 유효성을 검사해야 하는 필드가 있다고 가정합니다. Zod을 사용하여 이를 수행하려면 어떻게 해야 합니까?

케이크 조각 친구!





import { z } from 'zod'

const toy = z.object({
    name: z.number().optional(),
    color: z.string().optional(),
}) 
.refine(schema => schema.color ? !!schema.name : true, {
    message: 'name is required when you send color on request'
})


이 경우 색상이 refine을 통해 전송되면 요청에도 이름이 있는지 확인할 수 있습니다.

마스터에게 크레딧 🍻

좋은 웹페이지 즐겨찾기