单击复选框时,我正在更改另一个字段的“验证”属性。问题如下:“验证”字段已更改,我可以在 React 检查器中看到它,但 react-final-form 调用旧验证器。
你可以在这里看到一个演示:https ://codesandbox.io/embed/nny0zxz4rm 如果你点击复选框然后提交 - 表单将被提交并且验证器被忽略。如果您单击复选框两次 - 非必填字段将阻止表单提交。
我无法更改验证器的代码,也看不到任何其他选项来解决此问题。
单击复选框时,我正在更改另一个字段的“验证”属性。问题如下:“验证”字段已更改,我可以在 React 检查器中看到它,但 react-final-form 调用旧验证器。
你可以在这里看到一个演示:https ://codesandbox.io/embed/nny0zxz4rm 如果你点击复选框然后提交 - 表单将被提交并且验证器被忽略。如果您单击复选框两次 - 非必填字段将阻止表单提交。
我无法更改验证器的代码,也看不到任何其他选项来解决此问题。
这看起来确实像一个错误。字段级验证的设计并不是考虑到像这样快速交换验证函数的想法。但是,在解决此问题之前,有一种方法可以实现此目的。https://codesandbox.io/s/pyr69znvnq