element 动态合并表格的步骤


Posted in Javascript onDecember 31, 2020

前言

element 官方的例子太简单了,不满足实际的需求

数据肯定是动态的,合并的行数,列数都是动态的,该如何知道每一行的合并数呢

需求

动态合并表格,数据来源于数据库

正文

一开始,我的数据源是单独的数组,表格数据合并了几个数据,

我根据各个数组的长度,来决定每一行的合并数

结果:有些数据是正常的,但有些又合并出错了。计算的方式不对

element 动态合并表格的步骤

尝试二 

dataPretreatment() 用这个方法 计算出每一行的行数

dataPretreatment(){  //表格数据列合并预处理,生成一个与行数相同的数组记录每一行设置的合并数
    // 如果是第一条记录(索引为0),向数组中加入1,并设置索引位置;
    // 如果不是第一条记录,则判断它与前一条记录是否相等,如果相等,
    // 则向mergingRows中添入元素0,并将前一位元素+1,表示合并行数+1,
    // 以此往复,得到所有行的合并数,0即表示该行不显示。
     for(let i = 0; i < this.tableData.length; i ++){ // tabledata 表格数据源
       if(i === 0){
         this.mergingRows.push(1)
         this.mergingPos = 0
       }else {
        if(this.tableData[i].name === this.tableData[i - 1].name) { //哪些数据是要合并的 合并的条件是什么
         
          this.mergingRows[this.mergingPos] +=1
          this.mergingRows.push(0)
        }else {
          this.mergingRows.push(1)
          this.mergingPos = i
        }
       }
     }
   },

用这个方法 mergeColumn()绑定到官方提供的span-method 方法上面

element 动态合并表格的步骤

mergeColumn({row, column, rowIndex, columnIndex}){
     if (columnIndex === 0) { //第一列
       const _row = this.mergingRows[rowIndex];
       const _col = _row>0 ? 1 : 0;
       return {
        rowspan: _row,
        colspan: _col
       }
     }
    // if(columnIndex === 1){ //第二列 每一行的条件可以不一样 这样就是动态多样合并表格啦
    //   const _row = this.mergingRows[rowIndex];
    //   const _col = _row>0 ? 1 : 0;
    //   return {
    //     rowspan: _row,
    //     colspan: _col
    //   }
    // }   
   },

展示结果

element 动态合并表格的步骤

注意注意

      1. 第一列 计算出要合并的行数

element 动态合并表格的步骤

2.发现鼠标在表格移动  mergeColumn()这个方法一直在调用

Fannie式总结

一定要高清每一行的合并行数,按列来区分的

切记切记哦!不然表格合并出来的 跟你想象的不一样

以上就是element 动态合并表格的步骤的详细内容,更多关于element 动态合并表格的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
读jQuery之一(对象的组成)
Jun 11 Javascript
JS 实现获取打开一个界面中输入的值
Mar 19 Javascript
GitHub上一些实用的JavaScript的文件压缩解压缩库推荐
Mar 13 Javascript
jquery datatable服务端分页
Aug 31 Javascript
windows下vue-cli及webpack搭建安装环境
Apr 25 Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
May 03 Javascript
Mongoose实现虚拟字段查询的方法详解
Aug 15 Javascript
深入理解ES6学习笔记之块级作用域绑定
Aug 19 Javascript
微信小程序左右滑动的实现代码
Dec 15 Javascript
分析javascript原型及原型链
Mar 18 Javascript
移动端如何用下拉刷新的方式实现上拉加载
Dec 10 Javascript
基于vue+axios+lrz.js微信端图片压缩上传方法
Jun 25 Javascript
vue导入.md文件的步骤(markdown转HTML)
Dec 31 #Vue.js
Selenium执行JavaScript脚本的方法示例
Dec 31 #Javascript
javascript实现随机抽奖功能
Dec 30 #Javascript
JS+JQuery实现无缝连接轮播图
Dec 30 #jQuery
微信小程序弹窗禁止页面滚动的实现代码
Dec 30 #Javascript
vue-cli4.0多环境配置变量与模式详解
Dec 30 #Vue.js
基于Vue3.0开发轻量级手机端弹框组件V3Popup的场景分析
Dec 30 #Vue.js
You might like
php实现文件编码批量转换
2014/03/10 PHP
php绘制一个扇形的方法
2015/01/24 PHP
PHP动态输出JavaScript代码实例
2015/02/12 PHP
PHP实现恶意DDOS攻击避免带宽占用问题方法
2015/05/27 PHP
PHP读取汉字的点阵数据
2015/06/22 PHP
PHP微信红包生成代码分享
2016/10/06 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
javascript下过滤数组重复值的代码
2007/09/10 Javascript
Jquery Ajax学习实例7 Ajax所有过程事件分析示例
2010/03/23 Javascript
基于jquery的文本框与autocomplete结合使用(asp.net+json)
2012/05/30 Javascript
基于jquery自定义图片热区效果
2012/07/21 Javascript
javascript实现跳转菜单的具体方法
2013/07/05 Javascript
一个实用的图片切换支持点击切换和自动轮播
2014/09/09 Javascript
如何在MVC应用程序中使用Jquery
2014/11/17 Javascript
Ajax中解析Json的两种方法对比分析
2015/06/25 Javascript
全面详细的jQuery常见开发技巧手册
2016/02/21 Javascript
Javascript之BOM(window对象)详解
2016/05/25 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
vue实现选项卡及选项卡切换效果
2018/04/24 Javascript
socket在egg中的使用实例代码详解
2019/05/30 Javascript
javascript实现函数柯里化与反柯里化过程解析
2019/10/08 Javascript
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
python生成词云的实现方法(推荐)
2017/06/13 Python
python实现图书管理系统
2018/03/12 Python
python实现逆序输出一个数字的示例讲解
2018/06/25 Python
python 实现倒排索引的方法
2018/12/25 Python
基于Python脚本实现邮件报警功能
2020/05/20 Python
浅谈Python协程
2020/06/17 Python
基于python实现生成指定大小txt文档
2020/07/20 Python
父亲的菜园教学反思
2014/02/13 职场文书
新农村建设典型材料
2014/05/31 职场文书
十一国庆节“向国旗敬礼”主题班会活动方案
2014/09/27 职场文书
毕业生自荐求职信书写的技巧
2019/08/26 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书
如何在CSS中绘制曲线图形及展示动画
2021/05/24 HTML / CSS
Java基础之详解HashSet的使用方法
2021/06/30 Java/Android