• react antd


    表单

    基本结构:

    import React, { Component } from "react";
    
    class FormDemo extends Component {
      constructor(props) {
        super(props);
        this.state = {
          //...
        };
      }
    
      render() {
        return (
          <div>
            //...
          </div>
        );
      }
    }
    
    export default FormDemo;
    

     

    属性

    layout

    三种排列方式:

    • 水平排列horizontal:标签label和表单控件水平排列;(默认

    • 垂直排列vertical:标签label和表单控件上下垂直排列;

    • 行内排列inline:表单项Form.Item水平行内排列

     labelAlign

    label 标签的文本对齐方式: 'left' | 'right'

    需要结合labelCol(label占的格子数,总24) 和wrapperCol (form.item占的格子数,总24)使用, 若labelCol+wrapperCol <24,水平居中显示

    labelAlign="right"
    labelCol={{ span: 5 }}
    wrapperCol={{ span: 12 }}
    

    labelCol

    • 3.14.0 新增,之前的版本只能设置到 FormItem 上。)label 标签布局,同 <Col> 组件,设置 span offset 值,如 {span: 3, offset: 12} 或 sm: {span: 3, offset: 12}
    • 类型Object

    wrapperCol

    (3.14.0 新增,之前的版本只能设置到 FormItem 上。)需要为输入控件设置布局样式时,使用该属性,用法同 labelCol

    colon

    • 配置 Form.Item 的 colon 的默认值 (只有在属性 layout 为 horizontal 时有效),是否显示冒号
    • boolean
    • 默认:true

    hideRequiredMark

    • 是否隐藏所有表单项的必选标记 “*
    • 类型Boolean
    • 默认false

    form

    • 经 Form.create() 包装过的组件会自带 this.props.form 属性
    • 类型object

    Input组件

    Input属性

    defaultValue

    • 默认值
    • 类型string
    • value与value无任何关系
    • defaultValue会在第一次渲染时起效,之后再改变其绑定的值,也不会引起重新渲染,与value起效时间刚相反

    value

    • 类型string
    • value第一次渲染时不起效,只在onChange之后才起效,与defaultValue起效时间刚相反

    disabled

    • 是否禁用状态
    • 类型boolean
    • 默认为 false

    allowClear

    • 可以点击清除图标删除内容
    • 类型boolean

    maxLength

    最大长度

    type

    与原生的一致

    onChange

    • 输入框内容变化时的回调
    • function(e)
    • e.target.value

    onPressEnter

    • 按下回车的回调
    • function(e)
    • e.target.value

    prefix 和 addonBefore 异同

    同:

    1. 功能一样,给input 加前缀
    2. 类型一致,string|ReactNode

    异: 

    1. 样式不一样

    suffix 和 addonAfter 异同

    同:

    1. 功能一样,给input 加前缀
    2. 类型一致,string|ReactNode

    异: 

    1. 样式不一样

    使用input 需要使用value和onChange 相结合,实现数据双向绑定

    nameChange = (e) => {
        this.setState({name: e.target.value})
      }
      render() {
        const { name, phone } = this.state;
        return (
          <div>
            <form onSubmit={this.submitHandler}>
              名字:
            <Input type="text" value={name} onChange={this.nameChange} />
            </form>
          </div>
        );
      }
    

      

  • 相关阅读:
    原创frame-relay配置
    iptables详解和练习
    nfs-rpcbind-portmap挂载nfs-network file system
    linux-user-group添加与删除
    cgi-fastcgi-fpm
    lamp介绍
    子签CA以及给别人发CA
    正则表达式
    字符集和字符编码
    C++11新特性
  • 原文地址:https://www.cnblogs.com/baixinL/p/14496768.html
Copyright © 2020-2023  润新知