Проверка ошибок Formik FieldArray Yup не работает

#reactjs #typescript #formik #yup

#reactjs #typescript #formik #да

Вопрос:

Здравствуйте, я пытаюсь добиться проверки ошибок с помощью Yup и Formik, и я не могу понять, как заставить его работать только с массивом строк. Нет примеров простых массивов Formik и Yup.

Я просто пытаюсь использовать метод required(), чтобы убедиться, что пользователь вводит хотя бы одного друга, прежде чем ему будет разрешено нажать «Отправить». По какой-то причине я ничего не получаю в своих ошибках.

Я создал codesandbox для всех, кто хотел бы мне помочь. https://codesandbox.io/s/stupefied-fire-ksbid?file=/src/App.tsx

Заранее спасибо!

Ответ №1:

Вы вызвали свое поле description в схеме, когда оно должно быть friends . Вы также можете добавить .min(1) , чтобы убедиться, что он есть. Я всегда добавляю .trim() слишком много, поэтому пустые строки не принимаются, если только люди не могут вызывать друзей " " .

 const validationSchema = yup.object().shape({
  friends: yup.array().min(1).of(yup.string().trim().required())
});