antd表单的简易封装

封装antd的Form表单(简易版)

封装一个from模板,后面想用直接调就可以了

模板
import React from "react";
import { Form } from "antd";

function BaseForm(props: any) {
  const { formItem, onFinish, config, form, btnGroup } = props;
  return (
    <div>
      <Form onFinish={onFinish} form={form}>
        {formItem.map((item: any) => (
          <div key={item.id}>
            <Form.Item name={item.id} label={item.label} {...config}>
              {item.ele}
            </Form.Item>
          </div>
        ))}
        <Form.Item>{btnGroup}</Form.Item>
      </Form>
    </div>
  );
}

export default BaseForm;
调用
import { Button, Input } from "antd";
import React from "react";
import BaseForm from "./components/BaseForm";
import "antd/dist/antd.css";

function index() {
  const formItem = [
    {
      label: "第一个",
      id: `first`,
      ele: <Input placeholder="请输入" allowClear />,
    },
    {
      label: "第二个",
      id: `two`,
      ele: <Input placeholder="请输入" allowClear />,
    },
    {
      label: "第三个",
      id: `third`,
      ele: <Input placeholder="请输入" allowClear />,
    },
  ];
  const onFinish = (val: any) => {
    console.log(val);
  };
  const formOption = {
    formItem,
    onFinish: onFinish,
    btnGroup: (
      <Button type="primary" htmlType="submit">
        提交
      </Button>
    ),
  };
  return (
    <div>
      <BaseForm {...formOption} />
    </div>
  );
}

export default index;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值