Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

304
Vistas
¿Cómo ejecutar la validación solo si el elemento existe? Formik+Sí

Estoy usando Formik+Yup para crear un formulario y validación. Mi formulario es de varias páginas y tiene el botón siguiente, que debe desactivarse hasta que todos los campos obligatorios se llenen correctamente (sin error de validación). Todo fue bastante simple (solo estaba usando validateOnMount y el botón de desactivación solo con !formik.isValid) hasta que llegué a la página con botones de opción que deberían mostrar otra pregunta (también con botones de opción) según su respuesta a la pregunta anterior.

Si uso validateOnMount, se ejecutan todas las validaciones (incluso las preguntas que no aparecen), por lo que es imposible activar el botón. El uso de validateOnBlur o OnChange tampoco funcionó por la misma razón. Encontré la solución solo escribiendo declaraciones 'if' realmente largas y difíciles que se ven así

 disabled={ !formik.values.covidStatus || (formik.values.covidStatus === 'covidYes' && !formik.values.igTest) || (formik.values.covidStatus === 'covidYes' && formik.values.igTest === 'IgYes' && (!formik.values.testDate || !formik.values.igNumber)) || (formik.values.covidStatus === 'covidYes' && formik.values.igTest === 'IgNo' && !formik.values.covidDate) }

Traté de escribir una validación personalizada para preguntas de radio y la pregunta es: ¿Es posible determinar cuándo se ejecutará la validación personalizada? Para ser precisos, quiero que la validación se ejecute solo cuando exista un campo.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda