antd:formItemLayout 暂记

博客给出了表单布局的代码示例,定义了一个名为 formItemLayout 的常量,设置了 labelCol 左边留白大小和 wrapperCol 内容区大小,且两者和不能大于 24,属于前端开发相关内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 const formItemLayout = {
    labelCol: { span: 4 },  // 左边留白大小
    wrapperCol: { span: 17 },  // 内容区大小(两者和不能!>24)

};


import React, { PureComponent } from 'react';
import { connect } from 'dva';
import { Card, Form, Input, Divider, Table, Modal, Row, Col, Button, Radio, Checkbox } from 'antd';
import { FormComponentProps } from 'antd/lib/form';
import { ModalProps } from 'antd/lib/modal';

const formItemLayout = {
  labelCol: { span: 4 },  // 左边留白大小
  wrapperCol: { span: 17 },  // 内容区大小(两者和不能!>24)
};

interface IProps extends FormComponentProps, ModalProps {
  dataSource?;
}

interface Istate {}

@connect(({ manager, loading }) => ({
  ...manager, // 解析store所有值
  loading: loading.models.manager,
}))
@Form.create()
class WindowModal extends PureComponent<IProps, Istate> {
  render() {
    const { dataSource = {}, form, onOk, ...ModalProps } = this.props;
    const { getFieldDecorator } = this.props.form;
    const { title, content } = dataSource;
    const handleOk = () => {
      form.validateFieldsAndScroll((err, values) => {
        if (!err) {
          onOk({
            id: dataSource.id,
            ...values,
          });
        }
      });
    };
    return (
      <Modal {...ModalProps} onOk={handleOk}>
        <Form>
          <Row>
            <Col>
              <Form.Item  {...formItemLayout} label="素材名称">
                {getFieldDecorator(`text`, {
                  rules: [{ required: true, message: '请输入至少一个字符!', min: 1 }],
                  initialValue: title,
                })(<Input placeholder="请输入" />)}
              </Form.Item>
            </Col>
          </Row>
          <Row>
            <Col>
              <Form.Item  {...formItemLayout} label="文案">
                {getFieldDecorator(`text`, {
                  initialValue: content,
                })(
                  <Input.TextArea autosize={{ minRows: 5, maxRows: 10 }} placeholder="请输入" />
                )}
              </Form.Item>
            </Col>
          </Row>
          <Row>
            <Col>
              <Form.Item  {...formItemLayout} label="图片">
                {getFieldDecorator(`text`, {
                  rules: [{ required: true, message: '请输入至少一个字符!', min: 1 }],
                  // initialValue: ,
                })(<Input placeholder="请输入" />)}
              </Form.Item>
            </Col>
          </Row>
          <Row>
            <Col>
              <Form.Item  {...formItemLayout} label="视频">
                {getFieldDecorator(`text`, {
                  // initialValue:
                })(
                  <Input placeholder="请输入" />
                )}
              </Form.Item>
            </Col>
          </Row>
        </Form>
      </Modal>
    );
  }
}

export default WindowModal;

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值