Antd 我无法在输入 onChange 事件上出现错误

问题描述 投票:0回答:1

在 Antd 中,我需要在 onChange 事件中获取错误,但即使字段中有错误,在该字段中输入时我也看不到错误。例如;

https://stackblitz.com/edit/react-qurm1n?file=demo.tsx

逐步解决此问题;

  • 打开控制台并按提交按钮。在控制台中,您将在 2 字段中看到错误。在用户名和密码中。
  • 开始输入用户名并检查控制台。即使用户名尚未生效,也没有错误。

我该如何解决这个问题?如何查看 onChange 事件中的错误?感谢您的帮助!

我尝试使用 onBlur 执行此操作,是的,它可以工作,但我需要在 onChange 事件中执行此操作。我假设 antd 在字段处于 onValidating 状态时不会显示错误。

reactjs angular react-native next.js antd
1个回答
1
投票

似乎是一个计时问题,在更新表单之前验证表单,一个简单的修复方法是将代码包装在

setTimeout

  <Form.Item<FieldType>
    label="Username"
    name="username"
    rules={[{ required: true, min: 9, message: 'Error Message' }]}
  >
    <Input
      onChange={() => {
        setTimeout(() => console.log(form.getFieldsError()));
      }}
    />
  </Form.Item>
© www.soinside.com 2019 - 2024. All rights reserved.