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组件,写的不对的地方还请各位大佬多多包涵。

相关推荐
ObjectX前端实验室37 分钟前
【图形编辑器架构】🧠 Figma 风格智能选择工具实现原理【猜测】
前端·react.js
天桥下的卖艺者39 分钟前
R语言基于shiny开发随机森林预测模型交互式 Web 应用程序(应用程序)
前端·随机森林·r语言·shiny
技术钱1 小时前
vue3 两份json数据对比不同的页面给于颜色标识
前端·vue.js·json
路很长OoO1 小时前
Flutter 插件开发实战:桥接原生 SDK
前端·flutter·harmonyos
开水好喝2 小时前
Code Coverage Part I
前端
DoraBigHead2 小时前
🧭 React 理念:让时间屈服于 UI —— 从同步到可中断的演化之路
前端·javascript·面试
敢敢J的憨憨L2 小时前
GPTL(General Purpose Timing Library)使用教程
java·服务器·前端·c++·轻量级计时工具库
喝拿铁写前端3 小时前
Vue 组件通信的两种世界观:`.sync` 与普通 `props` 到底有什么不同?
前端·vue.js·前端框架
美酒没故事°3 小时前
npm源管理器:nrm
前端·npm·npm源
用户22152044278003 小时前
vue3组件间的通讯方式
前端·vue.js