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 相关文章推荐
类似CSDN图片切换效果脚本
Sep 17 Javascript
Jquery调用webService远程访问出错的解决方法
May 21 Javascript
原生js实现日期联动
Jan 12 Javascript
基于OL2实现百度地图ABCD marker的效果
Oct 01 Javascript
vue.js初学入门教程(1)
Nov 03 Javascript
AngularJS入门教程之路由机制ngRoute实例分析
Dec 13 Javascript
jQuery实现圣诞节礼物传送(花式轮播)
Dec 25 Javascript
Angular移动端页面input无法输入的解决方法
Nov 14 Javascript
webstorm中vue语法的支持详解
May 09 Javascript
vue elementUI table 自定义表头和行合并的实例代码
May 22 Javascript
Vue实现搜索结果高亮显示关键字
May 28 Javascript
JS实现简单日历特效
Jan 03 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
dedecms模板标签代码官方参考
2007/03/17 PHP
PHP实现多条件查询实例代码
2010/07/17 PHP
thinkPHP框架实现多表查询的方法
2018/06/14 PHP
PHP反射学习入门示例
2019/06/14 PHP
List the Codec Files on a Computer
2007/06/11 Javascript
js实现兼容IE6与IE7的DIV高度
2010/05/13 Javascript
jquery清空textarea等输入框实现代码
2013/04/22 Javascript
js弹出层永远居中实现思路及代码
2013/11/29 Javascript
JS实现多物体缓冲运动实例代码
2013/11/29 Javascript
JavaScript中的small()方法使用详解
2015/06/08 Javascript
jQuery实现购物车表单自动结算效果实例
2015/08/10 Javascript
js数组的五种迭代方法及两种归并方法(推荐)
2016/06/14 Javascript
遍历json 对象的属性并且动态添加属性的实现
2016/12/02 Javascript
微信小程序 数据遍历的实现
2017/04/05 Javascript
详解在Angularjs中ui-sref和$state.go如何传递参数
2017/04/24 Javascript
详解Angular Reactive Form 表单验证
2017/07/06 Javascript
layui 监听表格复选框选中值的方法
2018/08/15 Javascript
Element-ui tree组件自定义节点使用方法代码详解
2018/09/17 Javascript
vue-cli3 配置开发与测试环境详解
2019/05/17 Javascript
通过pycharm使用git的步骤(图文详解)
2019/06/13 Python
应用OpenCV和Python进行SIFT算法的实现详解
2019/08/21 Python
FFrpc python客户端lib使用解析
2019/08/24 Python
pytorch 实现查看网络中的参数
2020/01/06 Python
基于Tensorflow一维卷积用法详解
2020/05/22 Python
Pandas对每个分组应用apply函数的实现
2020/12/13 Python
Flask中jinja2的继承实现方法及实例
2021/03/03 Python
Html5 webview元素定位工具的实现
2020/08/07 HTML / CSS
护理个人求职信范文
2014/01/08 职场文书
结婚邀请函范文
2014/01/14 职场文书
婚礼秀策划方案
2014/05/19 职场文书
酒店保洁员岗位职责
2015/02/26 职场文书
中学生学习保证书
2015/02/26 职场文书
小学生安全教育主题班会
2015/08/12 职场文书
七年级作文之《我和我的祖国》观后感作文
2019/10/18 职场文书
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL
解决spring.thymeleaf.cache=false不起作用的问题
2022/06/10 Java/Android