<Formik
enableReinitialize
initialValues={formValues}
onSubmit={handleSubmit}
>
{(formProps) => {
return (
<FormComponent />
);
}}
</Formik>
上面这段代码 formValue初始值是空的 但是当页面加载成功后 formValues会被api返回的值更新 这样form的初始值initialValues就有了。项目使用的是formik 这样操作后 formik提供了一个dirty prop 但是当initialValues有了之后 dirty 就变成了true。这样导致后面我很难用dirty来判断用户是否真的修改了form。请问除了用dirty这个prop 还有什么办法来判断用户是否真的修改了form中的某些字段。谢谢
问题已经解决 后端api返回值中缺少某一个字段 导致自定义的initialValues值和api返回值回填到values时有出入。要求后端也返回这个字段之后 dirty值就对了