Antd中的Modal>Form结构的底部按钮

最近写了大量的Form表单,不是一个接一个,而是每隔几天就来一个那种。每次都会卡在Modal的footer上面。我已经受够了,既然记不住怎么用,我就不打算记了,索性写在博客上,每次用都来查一下,也是极好的。

如题,就是使用Modal弹出一个Form,使用的都是antd中的组件,为了能够自定义footer,要分成下面几个步骤:

步骤0:创建一个form handler

jsx 复制代码
    import { form } from 'antd';
    ...
    const [form] = Form.useForm();

步骤1:给Form绑定handler

jsx 复制代码
        <Form
          form={form}
          ...

步骤2:Modal打开或者关闭的时候重置表单数据

注意:如果需要回填数据,则会在其他useEffect中使用setFieldsValue进行回填。

jsx 复制代码
  useEffect(() => {
    form.resetFields();
  }, [props?.visible]);

步骤3:在Modal的footer中自定义button

jsx 复制代码
    <Modal
      forceRender
      visible={visible}
      ...
      footer={[
        <Button onClick={outerModalCancel}>Back</Button>,
        <Button type="primary" onClick={() => form.submit()}>
          Submit
        </Button>
      ]}
      ...

由于本人之前搞得不是互联网,所以最近才开始大量使用antd组件,写的不对的地方还请各位大佬多多包涵。

相关推荐
谢尔登5 分钟前
【React】使用 useContext + useReducer 实现一个轻量的状态管理库
前端·javascript·react.js
Bee.Bee.10 分钟前
vue3提供的hook和通常的函数有什么区别
前端·javascript·vue.js
元拓数智12 分钟前
企业级人员评价系统Web端重构实战:前端架构效能升级
前端·重构·架构
sunshine_程序媛12 分钟前
在Vue2项目中引入ElementUI详细步骤
前端·ui·elementui·前端框架·vue
离岸听风14 分钟前
Docker 构建文件代码说明文档
前端
VisuperviReborn19 分钟前
前端开发者的知识深度革命,从打牢基础开始
前端·javascript·架构
Nano19 分钟前
Vue响应式系统的进化:从Vue2到Vue3.X的深度解析
前端·vue.js
工业3D_大熊21 分钟前
3D Web轻量化引擎HOOPS Communicator赋能一线场景,支持本地化与动态展示?
前端·3d
某人的小眼睛25 分钟前
vue3 element-plus 大文件切片上传
前端·vue.js
东坡白菜28 分钟前
最快实现的前端灰度方案
前端