reactjs 如何检查Formik表单是否有任何更改?

e0bqpujr  于 2023-11-18  发布在  React
关注(0)|答案(4)|浏览(154)

我有一个表单页面,如果按下“返回”按钮,我需要显示一个对话框,询问用户是否只在表单更改时才保存表单。
有没有一种方法可以轻松地检查表单是否已经更改,而不必将每个字段与initialValues对象进行比较?

sz81bmfz

sz81bmfz1#

到目前为止,我发现的最好的解决方案是使用lodash.isEqual。然后,您可以比较props initialValuesvalues,以检查是否有任何更改。

vyu0f0g1

vyu0f0g12#

您可以通过访问formik.touched浏览触摸的字段


Docs

eagi6jfj

eagi6jfj3#

您可以创建一个布尔标志(状态),并在每个字段的onChange事件中将其更改为true

krcsximq

krcsximq4#

formik在formik“props”中有一个名为“dirty”的变量。它是自动计算的。https://formik.org/docs/api/formik#dirty-boolean

相关问题