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 table 行合并

在antd vue的表格显示中,合并多个字段到一列及自定义显示样式

elementui表格单元格合并后,单元格内边距变大

vue中 表头 th 合并单元格,且表格列数不定的动态渲染方法

vue中 表头th 合并单元格,且表格列数不定的动态渲染方法

poi读取复杂的Excel表格,如图