当前位置:   article > 正文

element-ui table组件根据后端返回数据结构实现自定义单元格合并_后端返回的二级数组,如何el-table合并

后端返回的二级数组,如何el-table合并
1、想要的效果

2、后台返回的数据接口 
  1. [
  2. { name: '上下游单位同名', type: '指标', value: '事前预测', age: '',i_id:'1' },
  3. { name: '上下游单位同名', type: '指标', value: '事前预测', age: '',i_id:'1' },
  4. { name: '上下游单位同名', type: '指标', value: '事前预测', age: '',i_id:'1' },
  5. { name: '同名双向结算', type: '指标', value: '事后预警', age: '', i_id: '2' },
  6. { name: '贸易合同异常模型', type: '评价模型', value: '事后预警', age:'',i_id:'3' },
  7. { name: '反洗钱模型', type: '计算模型', value: '事后预警', age:'',i_id:'4' },
  8. ]
3、js逻辑代码
  1. // 处理table数据 收集要合并的数据
  2. //tableData 为上图后台所返回的table数据源
  3. //i_id为我们所要合并用的唯一标识
  4. handleTableData (tableData = []) {
  5. let rowSpanArr = []
  6. let position = 0
  7. if (!!tableData && Array.isArray(tableData)) {
  8. tableData.map((item, index) => {
  9. if (index == 0) {
  10. rowSpanArr.push(1)
  11. position = 0
  12. } else {
  13. if (item.i_id== tableData[index - 1].i_id) {
  14. rowSpanArr[position] += 1
  15. rowSpanArr.push(0)
  16. } else {
  17. rowSpanArr.push(1)
  18. position = index
  19. }
  20. }
  21. })
  22. }
  23. this.rowSpanArr = rowSpanArr
  24. },
  25. // table合并单元格方法
  26. objectSpanMethod ({ row, column, rowIndex, columnIndex }) {
  27. // 哪一列 和 哪一列 中的 行进行合并
  28. if (columnIndex != 8 && columnIndex != 9 && columnIndex != 10) {
  29. let rowspan = this.rowSpanArr[rowIndex]
  30. return {
  31. rowspan: rowspan,
  32. colspan: 1
  33. };
  34. }
  35. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/965193
推荐阅读
相关标签
  

闽ICP备14008679号