Привет, я снова с сомнением Yup и formik
Мне нужно проверить массив полей Fromik, используя Yup Мои поля похожи на
[{startdate:'',endDate:'',name:''},{startdate:'',endDate:'',name:''}]
Начальная / конечная даты - объект Date Перед использованием Да, и Формик, я делал проверку, чтобы проверить выбранную дату, уже такие выходы
const checkDate=(selectedDate)=>{
const isExisting = datas
.filter((data) => data.startDate !== null || data.endDate !== null)
.some(
(data) =>
new Date(data.startDate).toLocaleDateString() === selectedDate ||
new Date(data.endDate).toLocaleDateString() === selectedDate,
);
if (isExisting) {
toast.error('Date already exits');
return false;
}
}
Я знаю это немного странно. У некоторых из вас может быть лучший вариант для этого. Я делал всю проверку формы вручную, как это, После использования formik и Yup помогло много.
Дойдя до точки, мне нужно проверить дату, если пользователь выбрал любую, Подтвердить, если выбрана дата выходит или нет в массиве. его массив полей formik Моя схема проверки похожа на
export const CheckoutSchema = Yup.object().shape({
Checkout: Yup.array()
.of(
Yup.object().shape({
name: Yup.string().required(),
startDate: Yup.date().required(),
endDate: Yup.date().required(),
}),
)
});
Я проверил некоторые git страницы и переполнение стека, но я не знаю, будет ли это работа над моим делом здесь