react-final-form-arrays icon indicating copy to clipboard operation
react-final-form-arrays copied to clipboard

FieldArray validate does not work with an initial row in initialValues

Open gschwa opened this issue 3 years ago • 1 comments

Are you submitting a bug report or a feature request?

bug report

What is the current behavior?

The current behavior is that when there are existing rows in initialValues the FieldArrays validate function when returning [undefined] impacts the field level validation. Interestingly, this does not affect any new rows.

See: https://codesandbox.io/s/react-final-form-field-arrays-forked-bqtle?file=/index.js

The field level validation checks if the value === bad. You will notice that typing bad in the first row does not result in an error but in any new rows it does work. The FieldArray's validate is simply: () => [undefined]

What is the expected behavior?

FieldArray validation should not impact Field level validation. This worked in:

  • final-form 4.17.0
  • final-form-arrays 2.0.0
  • react-final-form 4.1.0
  • react-final-form-arrays 2.0.3

but fails in:

  • final-form 4.18.0
  • final-form-arrays 3.0.0
  • react-final-form 6.0.0
  • react-final-form-arrays 3.0.0

Sandbox Link

https://codesandbox.io/s/react-final-form-field-arrays-forked-bqtle?file=/index.js

What's your environment?

This worked in:

  • final-form 4.17.0
  • final-form-arrays 2.0.0
  • react-final-form 4.1.0
  • react-final-form-arrays 2.0.3

but fails in:

  • final-form 4.18.0
  • final-form-arrays 3.0.0
  • react-final-form 6.0.0
  • react-final-form-arrays 3.0.0

Other information

gschwa avatar May 26 '21 13:05 gschwa

I have exactly the same problem, @gschwa did you find any temporary workaround for this?

kubakrupski avatar Dec 13 '22 16:12 kubakrupski