首页
学习
活动
专区
圈层
工具
发布

React 16.x折腾记 - (6) 基于React 16.x+ Antd 3.x封装的一个声明式的查询组件(实用强大)

抽离思路及实现 思路 合并props传递的值,尽可能的减少传递的东西(在组件内部实现默认值合并),把渲染的子组件通过遍历json去实现; 整个查询区域用的antd表单组件,聚合所有表单数据(自动双向绑定...,设置默认值等); 为了降低复杂度,子组件不考虑dva来维护状态,纯靠props和state构建,然后统一把构建的表单数据向父级暴露.....autoSearch 布尔值 启动非input的控件自动触发提交的props函数 数据源格式 data的数据格式基本和antd要求的格式一致,除了个别用来判断或者渲染子组件的, 字段解释: ctype...isEqual from 'lodash/isEqual'; // antd const { MonthPicker, RangePicker } = DatePicker; const Option..., }; } }); newData.push(combindData); }); // 返回合并后的数据

1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Ant Design的DatePicker日期组件不可选日期实现,让New Bing优化代码太棒了

    DatePicker 是 antd 的日期选择器组件,支持弹出的日历面板,点击选择或输入日期。...本文将介绍如何使用 antd 的 DatePicker 组件设置不可选日期:根据 antd 官方示例实现后,让 New Bing 新必应优化代码,结果让我很惊喜。...例如,如果我们想让日期显示为年月日时分秒的格式,我们可以这样写: import { DatePicker } from 'antd'; import moment from 'moment'; DatePicker...分ss秒')} />; 这里我们使用了一个函数作为 format 属性的值,使用了 date.format 方法来格式化日期。...总结 本文介绍了如何使用 antd 的 DatePicker 组件设置不可选日期,以及如何自定义日期格式。

    4.7K20

    Ant Design 4.0 发布,来看看如何升级?

    DatePicker 交互重做,面板和输入框分离,范围选择现可单独选择开始和结束时间。 Table 默认背景颜色从透明修改为白色。 Tabs 火柴棍样式缩短为和文字等长。...DatePicker 重写 提供 picker 属性用于选择器切换。 范围选择现在可以单独选择开始和结束时间。 onPanelChange 在面板值变化时也会触发。...在运行 codemod cli 前,请先提交你的本地代码修改。...修改后可以反复运行上述命令进行检查。 ? 注意 codemod 不能涵盖所有场景,建议还是要按不兼容的变化逐条排查。...用新的 @ant-design/icons 替换字符串类型的 icon 属性值 import { Avatar, Button, Result } from 'antd'; + import { QuestionOutlined

    6.9K10

    年度实用技巧 | 越折腾越有趣,封装了一个表单组件

    参数介绍参数说明类型默认值data表单默认数据object{}list表单项展示数组any[][]layout表单布局object-callback提交操作的回调函数(value,list) => voidgetFormRef...提供的DatePicker组件。...textArea文本域类型使用的antd提供的Input.TextArea组件。当文本域类型表单项和其他表单项组合展示时,展示的布局值需要和组合的表单项一致,所以根据type类型做了特殊处理。...如何使用引入组件一般公共组件会放在components。完整的代码已经放github上了,github地址在文末。,这里不在重复,主要将一下实现思路。...弹窗展示数据提交如果后端接口没有特殊要求,value对象中的数据基本就满足了,如果需要其他值可以从list中获取。

    76820

    从零搭建 Vite + React 开发环境

    另外,造轮子对于自己也有一些技术上的帮助,学别人二次封装的东西,不如直接使用底层的库,这样也有助于自己系统的学习一遍知识,最近 Vite 很火,所以用 Vite 搭建一波,废话不多说,直接进入正文,如何搭建自己的开发环境...build 在浏览器中打开 dist 目录下的 index.html,如果一切正常,你应该能看到以下文本:'React' index.html 目前放在 dist 目录下,但它是手动创建的,下面会教你如何生成...} from "antd"; import "antd/dist/antd.css"; @inject("store") @observer class App extends Component...} from "antd"; import "antd/dist/antd.css"; @inject("store") @observer class App extends Component...this.props.store.reduce}>reduce ); } } export default App; 代码规范 代码校验、代码格式化、Git 提交前校验

    5K00

    如何开发项目管理系统中的项目结项板块?(附架构图+流程图+代码参考)

    六、前端界面与交互1.结项申请表单jsximport { Form, Input, Button, DatePicker } from 'antd';import axios from 'axios';...异步预览 将小文件(如 PPT、文档)先上传至临时路径,前端即时预览,确认无误后再转正式归档。幂等性设计 对关键接口(apply、approve、upload)添加幂等 Token,防止重复提交。...Q3:结项完成后,若需补充文件或二次审批,如何处理? A3:为了兼顾灵活性和规范化,建议在 project_closure 表中增加 version 字段,每发起一次结项申请则版本号自增。...对于已标记 COMPLETED 的记录,可在详情页提供“补充材料”按钮,点击后实际是发起新一轮提交,但保留历史版本数据。...后端在接收到补充请求时,可先校验是否允许补充(如是否在保修期内),然后将状态重置为 UPLOAD_PENDING,并再次通知审批人。审批人则在待办列表中看到新版本的待审核项,确认无误后再次标记完成。

    26200

    antd3.x中的form

    最近在维护公司的中台erp系统,项目中js库用的是react,ui库用的是antd。平时还是喜欢自己写css,刚开始还是有点不太习惯直接上ui库做项目,觉得用antd还是挺恶心的,主要是form。...而antd中的form则出了一个类似v-model的类似方法。它不仅仅提供了双向绑定功能,而且它还具有校验,取值,赋值,重置,数据搜集,提交功能。...}], })()} 虽然有双向绑定,但是在某些时候,也会用到设置值与获取值的方法,则会使用到setFieldsValue,getFieldsValue...设置值:setFieldsValue 通过setFieldsValue对其他控件进行赋值。...() 提交数据 这个类似于,通过使用form的onSubmit事件,在提交的button上进行 用法如下 <Form labelCol={{ span: 5 }} wrapperCol={{ span:

    2.6K30
    领券