zoukankan      html  css  js  c++  java
  • 自定义合并列:el-table

        objectSpanMethod({ row, column, rowIndex, columnIndex }) {//合并规则
          //当前行row、当前列column、当前行号rowIndex、当前列号columnIndex
          if (columnIndex === 0) {//第一列:参数column.property,内容:row.name,合并数量this.columnDatas[row.name]
            console.log(this.columnDatas[rowIndex],column.property,row.name,"读取参数")
            const _row = this.columnDatas[rowIndex];//每一列的数目:[1,2,0,1]
            if (_row) {
              return {
                rowspan: _row,
                colspan: 1
              };
            } else {
              return {
                rowspan: 0,
                colspan: 0
              };
            }
          }
        },

    注:目标是计算合并相同key的数量_row,而且是一个数组格式

        //合并相同key的数据data:如:this.getSpanArr(this.dataSource,"name");//[1,2,0,1]
        getSpanArr(data,key) {
          let spanArr = [];
          let spanIndex = null;
          if (data == null) {
            return [];
          } else {
            for (let i = 0; i < data.length; i++) {
              if (i === 0) {
                spanArr.push(1);
                spanIndex = 0;
              } else {
                if (data[i][key]=== data[i - 1][key]) {
                  spanArr[spanIndex] += 1;
                  spanArr.push(0);
                } else {
                  spanArr.push(1);
                  spanIndex = i;
                }
              }
            }
            return spanArr;
          }
        },

    附:常见合并key,读取value与num

        //计算相同key的数量num:{value:num},value是内容
        handleSpand(data,key) {
          let obj = {};
          data.forEach(val => {
            if (obj[val.key]) {
              obj[val.key]++;
            } else {
              obj[val.key] = 1;
            }
          });
          return obj;
        },
  • 相关阅读:
    NAMESPACE
    所谓has a 和 is a
    C++ 的多重继承
    c# 与 c++ 编译
    初始化的顺序:和定义的顺序以及初始化函数都有关系。都要先定义的在前,后定义的在后。甚至连类的顺序都必须这样。
    关于转换
    隐藏
    第四章第四个例题(LRJ)
    初来扎到啊(觉得有些神圣尼)
    理解JS的执行环境
  • 原文地址:https://www.cnblogs.com/wheatCatcher/p/10530661.html
Copyright © 2011-2022 走看看