Да, компакт на массиве во вложенном объекте не применяется - PullRequest
0 голосов
/ 28 октября 2019

У меня есть следующий объект, и я не могу найти способ заставить Yup игнорировать ложные значения в массиве.

const schema = object().shape({
   myAttribute: object({
      myFirstValue: array(string())
        .ensure()
        .compact(), //this isn't working
      mySecondValue: array(string())
         .ensure()
        .compact() //this isn't working
   })
)}

Однако проверка работы массива и строк компактнанет. Есть ли понимание того, как работает compact, что не применимо в этой ситуации? Я использую это для формы Formik.

1 Ответ

0 голосов
/ 29 октября 2019

Вы реструктурируете методы типа из основного объекта yup? Я бы попробовал:

const schema = Yup.object().shape({
   myAttribute: Yup.object().shape({
      myFirstValue: Yup.array().of(Yup.string()).compact(),
      mySecondValue: Yup.array().of(Yup.string()).compact()
   })
)}
...