我有一个react-final-form
表单,需要从状态初始化。当其中一个字段发生更改时,我想将表单重置为初始(空)值。所以我使用订阅字段的脏状态,如果它发生变化,我用它OnChange
来重置表单:
<Field name="option" subscription={{ dirty: true }}>
{({ input: { onChange } }) => (
<OnChange name="option">
{value => {
form.reset({
...initialValues,
option: value
});
}}
</OnChange>
)}
</Field>
但它不起作用,因为表单在初始化后会立即重置。有没有办法将这两个事件分开?这样我只能在用户修改了表单的字段时重置表单?
这是我的代码框的链接。