Middle+
Разкажете ни за работата си с Formik и Yup: колко сложни бяха формулярите, които писахте, как изграждахте схемите за валидиране?
sobes.tech AI
Отговор от AI
Formik е библиотека за управление на състоянието на формулярите в React, а Yup е за валидиране на данни. Работил съм с формуляри с различна сложност: от прости с няколко полета до многостъпкови и динамични форми.
За създаване на схеми за валидиране с Yup използвах вериги от методи, например:
import * as Yup from 'yup';
const validationSchema = Yup.object().shape({
email: Yup.string().email('Невалиден формат на имейл').required('Задължително поле'),
password: Yup.string().min(8, 'Минимум 8 символа').required('Задължително поле'),
age: Yup.number().min(18, 'Възрастта трябва да бъде поне 18').nullable(),
});
Formik се интегрира с Yup чрез свойството validationSchema, което позволява автоматична валидиране на формуляра при промени. За сложни формуляри разделих схемата на части и ги комбинирах, както и използвах условна валидизация в зависимост от състоянието на формуляра.