Learning
Zod

Gyakori hibák

Tipikus Zod hibák: parse UI-ban, success ellenőrzés kihagyása, duplikált típusok, túl szigorú schema külső API-hoz, defaultok hiánya.

Gyakori hibák

1) parse UI-ban

function handleSubmit(data: unknown) {
  const result = userSchema.safeParse(data)
  if (!result.success) return
  submitUser(result.data)
}

2) Success ellenőrzés kihagyása

const result = schema.safeParse(data)
if (!result.success) {
  console.error(result.error.issues)
  return
}
doSomethingWith(result.data)

3) Duplikált típusok

const userSchema = z.object({ name: z.string(), age: z.number() })
type User = z.infer<typeof userSchema>

4) Túl szigorú schema külső API-hoz

const apiResponseSchema = z.object({ id: z.number(), name: z.string() })

5) Defaultok hiánya (query paramokhoz)

const paginationSchema = z.object({
  page: z.coerce.number().int().positive().default(1),
  limit: z.coerce.number().int().positive().max(100).default(20),
})

6) unknown helyett any

  • használd inkább az unknown-t, és validálj a sémával

On this page