0aff31e2d3
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
668 B
668 B
layout
| layout |
|---|
| default |
Ejemplo de Zod
import { z } from "zod";
// Definir el esquema de datos
const UserSchema = z.object({
name: z.string(),
age: z.number().min(0).max(120),
email: z.string().email(),
roles: z.array(z.enum(["admin", "user", "guest"])),
});
// Inferir el tipo TypeScript automáticamente
type User = z.infer<typeof UserSchema>;
// Validar datos
const result = UserSchema.parse({
name: "Juan",
age: 30,
email: "juan@example.com",
roles: ["admin", "user"]
});
// ✅ Si los datos son válidos, devuelve el objeto tipado
// ❌ Si no, lanza un error con detalles del problema