1.react相关问题:
antd组件问题
TreeSelect树形选择组件问题
树形组件自带模糊搜素问题:
treeNodeFilterProp 属性过滤设置 两个种过滤方式 ‘value’ 和 ‘title’(文本)
树形组件复选问题:
showCheckedStrategy 属性控制选中显示子、父节点 SHOW_ALL 和 SHOW_PAPENT(选中父节点时,只显示子节点)
树形组件数据量过大延迟显示问题:
treeDefaultExpandAll 树形控制显示全部节点还是只显示父节点 boolean
Tree树形选择组件问题
场景:切换树型组件的单选多选
问题1:切换时会存在页面不渲染问题
解决方法:给Tree组件添加key值
问题2:旧版本存在加key值之后出现小三角无法展开问题;
原因:key值改变之后存在props传值缺失问题
解决:去掉key,使用显示隐藏实现组件刷新(vue中不能使用v-if);
Form表单问题:
表单组件联合Table组件使用时问题:
在 axios 请求时参数 直接从 props.form.getFieldsValue 获取,Table页数操作时存在bug(如:搜索框中有值,不点搜索点击页面跳转的情况下会出现搜索过滤),
解决办法:按钮操作判断,搜索按钮可以传递一个值过去,传参做三目判断
表单自定义验证问题:
1.基本验证
比如:场景,使用表单验证文本域限制字节问题
中文占2字节,其他字符1字节
解决思路:getfieldDecorator(id,{
rules:[
{max:number,message:'字数过长!'}
]
});//number 为函数里面正则验证处理之后返回的字符长度
2.自定义验证 validator 方法验证
问题1:
比如:场景,多种限制验证 直接使用会出现bug 无法调用validateFields方法
例子:validator:async (rule,value,callback)=>{
if(条件){
await callback(‘验证错误文本’)
}else{
await callback(‘验证错误文本’)
}else{
await callback()//验证通过
}
bug原因:validator 异步问题,直接使用出现错误无法捕获
解决办法:
1.使用async 和 await 或者使用 Promise 对象进行包裹
例子:
validator:(rule,value,callback)=>{
new Promise((resolve,reject)=>{
if(条件){
reject(callback(‘错误文本’));
}else{
resolve(callback());//验证通过
}
})
}
<!-- 问题2:
比如:场景,自定义表单进行input验证时,在默认值initiaValue设置为undf
问题:提交触发自定义校验会出现validateFields和validateFieldsAndScroll挑不出校验,无法进行提交
解决办法:默认值initiaValue设置为‘’, -->
Table表格问题:
表格行复选问题;
rowSelection 属性设置表格行显示,属性下有 type、selectedRowKeys、onChange、getCheckboxProps 属性
类型为复选的情况下回显选中问题,getCheckboxProps:(record)=>{let id = null;遍历ids数组;return({selectedRowKeys:id})}
表格行其他问题:
expandedRowRender 额外的展开行属性 使用 fun(){let expandedRowRender=()=>{
let columns = [...],data=[...];
<Table columns={columns} dataSource={data} pagination={false}></Table>
}}
表格分页input填写跳转问题:
自带组件填写存在bug 可以为负数
解决:不用自带组件,直接自己写一个
DataPicker日期选择组件问题:
需要联合 moment 插件使用
onChange 属性选择后 (date,dateString)moment数组和时间字符选择显示
时间格式属性format ‘YYYY-MM-DD HH:mm:ss’
Modal对话框联合Form使用做浮动module问题:
表单数据残留问题 遮罩设置问题
解决:
进入初始处理、确定清除处理、取消初始化处理
mask属性控制遮罩显示 boolean 、maskClosable属性控制蒙板点击隐藏 boolean
Upload上传组件上传下载问题:已有相关demo
Popover气泡卡片对齐问题:
问题源,靠近屏幕边框朝屏幕方向对齐时会挤压向下走
InputNumber 组件版本更变问题
问题:在4.0以前的版本 InputNumber不支持blur和focus()
发现场景:在Tabel中使用blur这个api时调用方法无效
解决办法:可以使用onMoseout事件和onMouseover事件代替
低版本中使用 <Input type='number' /> 代替 InputNumber组件然后使用Input组件Api可以避免该问题
——————————————————————————————————————————
因为一些比较少用的组件在工作中使用的少,所以很多没有整理出来,比如Pagination分页中跳转页面填写负数问题等一些开发中常见问题以后陆续更新