无心Code

Come on baby!

   ::  :: 新随笔  ::  ::  :: 管理

antd表单使用笔记

import React, { useState, useEffect, useRef } from "react";
import { Form, Input, Button, DatePicker, Select, Row, Col, Space, Table, Empty, Radio, InputNumber, } from "antd";
 import { CompassOutlined } from "@ant-design/icons";
import moment from "moment";
import "moment/locale/zh-cn";

const Demo = (props) => {
  // 提交表单
  const onFinish = (val) => {
    console.log(val);//val中获取表单字段内容
  };
  const value = {
    name: "longs",
    date: "2022-11-05 21:19:08",
    bumen: "软件集成部",
    sex:0
  };
  const [form] = Form.useForm(); // 设置表单对象
  
  //重置表单
  const resetHandle=()=>{
    form.resetFields()
  }

  useEffect(() => {
    value.date = moment(value.date);
    // 设置表单字段
    form.setFieldsValue(value);
    //获取表单字段
    const fvalue=form.getFieldsValue()
    fvalue.date=moment(fvalue.date).format('YYYY-MM-DD HH:mm:ss')
    console.log(fvalue)
  });
  return (
    <div style={{ background: "#fff", padding: "10px" }}>
      <Form onFinish={onFinish} layout="horizontal" form={form} >
        <Form.Item label="名称" name="name" rules={[{ required: true, message: '不填不行啊' }]}>
          <Input />
        </Form.Item>
        <Form.Item label="日期" name="date" rules={[{ required: true, message: '不填不行啊' }]} >
          <DatePicker showTime />
        </Form.Item>
        <Form.Item label="部门" name="bumen" required>
          <Select allowClear>
            <Select.Option value="销售部">销售部</Select.Option>
            <Select.Option value="软件集成部">软件集成部</Select.Option>
            <Select.Option value="人事部">人事部</Select.Option>
          </Select>
        </Form.Item>
        <Form.Item label="性别" name="sex">
          <Radio.Group label="性别">
            <Radio value={1}>男</Radio>
            <Radio value={0}>女</Radio>
          </Radio.Group>
        </Form.Item>
        <Form.Item>
          <Button type="primary" ghost htmlType="submit">
            <CompassOutlined></CompassOutlined>提交
          </Button>
          <Button onClick={resetHandle}>重置</Button>
        </Form.Item>
      </Form>
    </div>
  );
};
export default Demo;

antd-form

posted on 2022-11-06 03:23  melong  阅读(115)  评论(0)    收藏  举报