嵌套对象中的数组上的Yup Compact不适用

时间:2019-10-28 20:24:47

标签: reactjs formik yup

我有以下对象,似乎无法找到一种方法让Yup忽略数组中的falsey值。

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 :(得分:0)

您是否正在从主要的yup对象重构类型方法?我会尝试:

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