首页 > 其他分享 >vue+elemntUI合并行2

vue+elemntUI合并行2

时间:2023-06-03 09:47:04浏览次数:40  
标签:index vue recordId 合并 element recordIndexArr recordObj id elemntUI

返回的是一维数组

o:[{id:1,name:s;age:11},{id:1,name:s;age:11},{id:2,name:p;age:15}]

 1、对返回的数据做处理

getData() {
 that.tableData = res.data.data.list;
that.getFormatList(); // 重新合并行
},

getFormatList() {
      let recordObj = {};
      this.recordIndexArr = [];

      this.tableData.forEach((element, index) => {
        element.rowIndex = index;
        if (recordObj[element.recordId]) {
          recordObj[element.recordId].push(index);
        } else {
          recordObj[element.recordId] = [];
          recordObj[element.recordId].push(index);
        }
      });
      // 将数组长度大于1的值 存储到this.recordIndexArr(也就是需要合并的项)
      for (let k in recordObj) {
        if (recordObj[k].length > 1) {
          this.recordIndexArr.push(recordObj[k]);
        }
      }
      
    },

  2、合并行

objectSpanMethod({ row, column, rowIndex, columnIndex }) {
      if (columnIndex <= 9) {
        for (let i = 0; i < this.recordIndexArr.length; i++) {
          let element = this.recordIndexArr[i];
          for (let j = 0; j < element.length; j++) {
            let item = element[j];
            if (rowIndex == item) {
              if (j == 0) {
                return {
                  rowspan: element.length,
                  colspan: 1
                };
              } else if (j != 0) {
                return {
                  rowspan: 0,
                  colspan: 0
                };
              }
            }
          }
        }
      } 
    },

  完成

 

标签:index,vue,recordId,合并,element,recordIndexArr,recordObj,id,elemntUI
From: https://www.cnblogs.com/shirley-csdn/p/17453311.html

相关文章

  • Vue路由,子路由,动态路由,动态路由参数,路由查询参数
    一、路由、子路由、动态路由子路由、动态路由类似,不同的是子路由同时有路由跳转和页面跳转的,动态路由只有路由跳转,没有页面跳转举例如下:/customerHome 下有 item1 和 item2 两个子路由。import{createRouter,createMemoryHistory,RouteRecordRaw}from'vue-router'......
  • vue 浏览器调试 定位具体行数
    module.exports={lintOnSave:false,devServer:{//开发环境下设置为编译好以后直接打开浏览器浏览open:true,},configureWebpack:(config)=>{//调试JSconfig.devtool="eval-source-map"},css:{//查看CSS属于哪个css文件......
  • vue+elementui 合并行
    1,数据格式是二维的如:o:{id:123,prams:{name:aaa,age:11}}的对象第一步:先获取返回的数据为indexInfoList,遍历转化为一维数组 that.indexInfoList.forEach(ele => {if(ele.prams.length>=1){ele.prams.map((related,index)=>{......
  • Vue——自动切换图片
    利用属性指令+setInterval(是一个实现定时调用的函数)<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><scriptsrc="js/vue.js"></script></head>......
  • Vue——属性指令、style和class、条件渲染、列表渲染、事件处理、数据双向绑定、过滤
    vm对象<body><divid="app"><h1>{{name}}</h1><button@click="handleClick">点我</button></div></body><script>//1写在data或method中的属性或方法,从vm中直接可以点出来//2method的函数中,如......
  • vuepress快速安装笔记
    参考https://vuepress.vuejs.org/guide/getting-started.html#prerequisiteshttps://blog.llyth.cn/1065.html注意:应该是cd到新建项目文件夹的docs里,然后yarninstall。在项目文件夹里,执行yarndev启动运行项目,yarnbuild生产静态文件,结果与文件路径如下。waitRenderings......
  • vue解决跨域方法
    什么是跨域  跨域指浏览器不允许当前页面的所在的源去请求另一个源的数据。源指协议,端口,域名。只要这个3个中有一个不同就是跨域。这里列举一个经典的列子:#协议跨域http://a.baidu.com访问https://a.baidu.com;#端口跨域http://a.baidu.com:8080访问http://a.baidu.com:80;#域......
  • vue学习笔记一
    VUE自学目录VUE自学一、vue核心的相关学习一,搭建vue开发环境1.下载vue.js2.下载扩展工具二,helloworld案例三,helloworld项目扩展四,模板语法五,数据绑定六,el和data的两种写法发七,理解MVVM模型八,数据代理1.Object.defineProperty2.什么是数据代理3.vue中的数据代理九,事件处理1.事件......
  • vue、js onSelect事件 获取选中的值
    https://huaweicloud.csdn.net/639ff5afdacf622b8df90ecc.html?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2~default~BlogCommendFromBaidu~activity-1-125977595-blog-51669331.235^v36^pc_relevant_default_base3&depth_1-ut......
  • 总结vue3 的一些知识点:Vue.js 安装
    Vue.js安装1、独立版本我们可以在Vue.js的官网上直接下载vue.min.js并用 <script> 标签引入。下载Vue.js2、使用CDN方法以下推荐国外比较稳定的两个CDN,国内还没发现哪一家比较好,目前还是建议下载到本地。StaticfileCDN(国内) : https://cdn.staticfile.org/v......