Antd 表格合并与赋值渲染
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Antd 表格合并与赋值渲染相关的知识,希望对你有一定的参考价值。
参考技术A 官方文档合并列/行有一个关键属性 rowSpan和colSpan如图:
render 中有一个默认renderCOntent函数,包含三个参数 value,row,index 一般我们想合并几行列 通过判定index==?来设置 colSpan /rowSpan的值为0 就能成功合并(renderCOntent函数是默认格式,不建议大改)
情景:
后端给了一个多维数组,首先要做的是遍历数组,push到新数组里。原因是方便 antd表格数据渲染
拿到新数组后,开始合并表格列
特别提醒:新数组中的参数名要和表格中的dataIndex 一致!
做到这一步数据基本能渲染出来,如果还想对数据进行填写累加操作,那么需要植入Input组件 使用onBlur函数方法
特别提醒:4.0版本onBlur 时不再修改选中值,且返回 React 原生的 event 对象 我用的是3.16版本!
通过传入的values(row是形参) 进行判定,不为undefined时则转化为Number类型(input的值都是string,转化后方便计算value值和fraction值)
slice() 方法可从已有的数组中返回选定的元素。
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
注意: reduce() 对于空数组是不会执行回调函数的。
最后获取的newData就是得到的累加总值。
在antd vue的表格显示中,合并多个字段到一列及自定义显示样式
参考技术A从后来请求的表格数据样例
0,最正常的显示,一个字段一个列,title定义显示名,dataIndex和字段对应。
1,在表格同一列中,显示样本总数,负样本数及正样本数,此时,dataIndex已无意义,没用。
关于下面的customRender()函数,一个,两个,三个参数的意义,我没有系统的看到过,所以每次使用时,console.log()显示后,再提取要的数据。不专业~~~
3,在同一列中,显示样本数据的起止时间
3,在一个列中不但显示数据,还使用tip显示额外信息
return多行,维护性不太好,需要使用第4点改进
4,scopedSlots结合customRender,作更优雅从容的自定义样式或操作
columns里的定义
table里的定义,感觉有些模糊了div和template标签的用法,没有进一步探究,但效果一样。
以上是关于Antd 表格合并与赋值渲染的主要内容,如果未能解决你的问题,请参考以下文章
在antd vue的表格显示中,合并多个字段到一列及自定义显示样式
vue中 表头 th 合并单元格,且表格列数不定的动态渲染方法