Tengo una aplicación que usa zod pero me gustaría usar algunos métodos de una biblioteca diferente (validator.js) La documentación de zod dice:
Consulte validator.js para conocer otras funciones útiles de validación de cadenas.
No estoy seguro si eso significa que estas funciones se implementan en zod, o también tengo que instalar validator.js, en ese otro caso, ¿cómo puedo usar ambas bibliotecas juntas? no puedo encontrar ningún ejemplo.
¡Gracias!
Creo que Zod significa que podrías instalar validator.js y usar sus validaciones con Zod. La función de refinado de Zod hace que esto sea bastante sencillo. Por ejemplo, si quisiera validar una cadena como un número de tarjeta de crédito usando Zod y el validador, podría verse así
import { z } from "zod"; import isCreditCard from "validator/lib/isCreditCard"; const userSchema = z.object({ name: z.string(), creditCard: z.string().refine(isCreditCard, { message: 'Must be a valid credit card number' }), }) console.log(userSchema.safeParse({ name: 'Doug', creditCard: '1234', })); console.log(userSchema.safeParse({ name: 'steve', creditCard: '4000 0200 0000 0000' })); El primer ejemplo falla con un ZodError que contiene nuestro mensaje de error personalizado. El segundo ejemplo tiene éxito.