Skip to content

FieldArray validate does not work with an initial row in initialValues  #163

Open
@gschwa

Description

@gschwa

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions