reacthooks和antd form.submit校验自定义富文本框,输入内容提示立马消失
时间: 2024-04-08 22:30:28 浏览: 206
Axure:输入框提示语的自动消失与显示.rp
5星 · 资源好评率100%
对于使用 React Hooks 和 Ant Design 的 Form 组件来进行自定义文本框的校验,输入内容立即消失的问题,你可以尝以下方法:
1. 使用 useState Hook 来踪输入框的值,并在输入框值生变化时更新状态。
2. Form 组件的 onFinish 回调函数中进行校逻辑。可以通过检查输入框的是否符合要求来决定是否提示错误信息。
3. 使用 Ant Design 的 message 组件来显示错误提示信息。可以校验失败时调 message.error() 方法来显示信息,并在校验成功时用 message.success() 方法消除提示信息。
以下一个示例代码:
```jsximport React, { useState 'react';
import { Form, Input, Button, message } from 'antd';
const MyCustomRichTextEditor = () => {
const [content, setContent] = useState('');
const onFinish = (values) => {
//行校验逻辑
if (content === '') {
message.error('内容不能为空');
return;
}
// 校验通过,提交表单
// ...
// 提示信息消失
message.success('提交成功');
};
return (
<Form onFinish={onFinish}>
<Form.Item
name="content"
rules={[{ required: true, message: '请输入内容' }]}
>
<Input.TextArea
value={content}
onChange={(e) => setContent(e.target.value)}
/>
</Form.Item>
<Form.Item>
<Button type="primary" htmlType="submit">
提交
</Button>
</Form.Item>
</Form>
);
};
export default MyCustomRichTextEditor;
```
在上面的代码中,我们使用 useState 来追踪输入框的值,并在输入框值发生变化时更新状态。在 onFinish 回调函数中,我们进行了校验逻辑,如果发现内容为空,则使用 message.error() 方法显示错误信息,否则使用 message.success() 方法显示提交成功的提示信息。
希望这个示例能解决你的问题!如果还有其他问题,请随时提问。
阅读全文