0

这可能是一个错误,但我想在打开 GitHub 问题之前在这里发帖,看看整个社区是否有建议,或者是否有人可以因为我做错了而大声疾呼。

我想模糊提交上的任何重点领域。简单的。

根据文档,onSubmit 函数(values, form)作为参数传递,formapi 包括获取所有注册字段的方法,以及所谓的模糊任何字段的方法。这是代码:

const onSubmit = async (values, form) => {
  const fieldsNames = form.getRegisteredFields();
  fieldsNames.forEach(name => form.blur(name));

  await sleep(300);
  window.alert(JSON.stringify(values, 0, 2));
};

我直接从 FinalForms 文档中分叉了基本示例,并添加了这两行以查看我是否可以让他们的示例工作,但它没有。要进行测试,只需在名字字段中输入,然后按回车键。该领域保持专注..

CodeSandbox 演示在这里

最终形式:FormApi Docs

谢谢阅读!

4

1 回答 1

1

form.blur()是您告诉 Final Form 该字段已模糊的方式(它将字段的状态标记为模糊)。它更像是一个倾听者。要真正强制地模糊该字段,您需要对 DOM 元素的引用

类似的东西getElementById('myField').blur()

于 2019-10-21T16:26:27.520 回答