Ant-Design-组件-——-Form表单(一).md

Ant Design of React @3.10.9javascript

拉取项目 luwei.web.study-ant-design-pro, 切换至 query 分支,可看到 Form 表单实现效果html

实现一个查询表单

查询表单查询表单前端

思路

  1. Create表单:@Form.create()
  2. 表单数据绑定 getFieldDecorator
  3. 渲染查询表单的查询条件 render
  4. 获取查询条件的值 validateFields

代码

1. Create表单:`@Form.create()`

Form.create()

这是一个高阶函数,传入的是react组件,返回一个新的react组件,在函数内部会对传入组件进行改造,添加上必定的方法用于进行一些秘密操做 若是有对高阶组件有想要深刻的请移步《深刻理解 React 高阶组件》,咱们这里不作过多的深究。java

Form.create() 包装过的组件会自带 this.props.form 属性react

// 使用方式以下:
class CustomizedForm extends React.Component {}
CustomizedForm = Form.create({})(CustomizedForm);

代码中结合 @修饰器,用 @Form.create() 进行建立。git

2. 表单数据绑定 `getFieldDecorator`

getFieldDecorator(id, options)

用于和表单进行双向绑定es6

<!-- 表单数据绑定 -->
<Form.Item {...formItemLayout} label={'名称'}>
    {getFieldDecorator('searchName')(
        <Input placeholder={'请输入名称'} />
    )}
</Form.Item>

3. 渲染查询表单的查询条件 `render `

在定义表单字段的时候,渲染到页面中,与步骤2代码一致github

更多FormItem属性请参考Ant Design - Form - Form.Itemweb

4. 获取查询条件的值 `validateFields`

form.validateFields / validateFieldsAndScroll

校验并获取一组输入域的值与 Error,若 fieldNames 参数为空,则校验所有组件小程序

const { form } = this.props;

// 获取并检查表单数据
form.validateFields((err, fieldsValue) => {
      if (err) return;
      const { searchName = '' } = fieldsValue;
});

深刻了解

做者简介:李尧晖,芦苇科技web前端开发工程师,表明做品:飞花亭小程序、续航基因、YY表情红包、YY叠方块直播竞赛小游戏。擅长网站建设、微信公众号开发、微信小程序开发、小游戏制做、企业微信制做、H5建设,专一于前端框架、服务端渲染、SEO技术、交互设计、图像绘制、数据分析等研究。

欢迎和咱们一块儿并肩做战: web@talkmoney.cn
访问 www.talkmoney.cn 了解更多

提供深圳微信公众号制做,高质量的钉钉外包,广东企业微信建设,东莞微信小程序制做,专业的小游戏开发,广州H5建设

相关文章
相关标签/搜索