final-form / react-final-form

🏁 High performance subscription-based form state management for React
https://final-form.org/react
MIT License
7.39k stars 481 forks source link

TypeError in publishFieldState for async validate with delayed appearance #883

Open ChrisChiasson opened 3 years ago

ChrisChiasson commented 3 years ago

Are you submitting a bug report or a feature request?

bug report

What is the current behavior?

uncaught error in console

What is the expected behavior?

no error

Sandbox Link

https://codesandbox.io/s/react-final-form-simple-example-forked-r5jmc?file=/index.js

What's your environment?

final-form 4.20.1 react 17.0.1 react-dom 17.0.1 react-final-from 6.5.2 (also happens on older versions of these packages)

Other information

The minimal error reproduction is very short, only 21 lines total. If either the delay or the async are removed, the error disappears.

In the original code, editable fields are generated for components that don't appear until some data is downloaded from a server, thus the delay. The inputs also require async validation.

K-Leon commented 3 years ago

Same Issue on our side - did you find any solution?

ChrisChiasson commented 3 years ago

I guess here we come to the opposite side of always giving a minimum reproducible error... because I no longer remember what I was doing, so I don't know what I did to fix it, if in fact I ever did fix it.

ChrisChiasson commented 3 years ago

I looked back through the relevant repo on my side and found a commit that talks about this bug, but there is no commit talking about how I worked around it, nor is it apparent from the code. I don't recall it stopping things from working in production though.

K-Leon commented 3 years ago

Thanks for checking!

We got a scenario where it is crashing/preventing the Form from submit forever.

ChrisChiasson commented 3 years ago

In dev mode or in production?

On Fri, Apr 2, 2021, 12:30 AM Leon @.***> wrote:

Thanks for checking!

We got a scenario where it is crashing/preventing the Form from submit forever.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/final-form/react-final-form/issues/883#issuecomment-812327820, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC2O764ABTSHYEB6LRK66ETTGVJBFANCNFSM4VPXD7VQ .