el-table动态合并单元格,element table合并列

  el-table动态合并单元格,element table合并列

  本文主要介绍vue使用el-table动态合并列和行。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。

  本文分享了vue使用el-table动态合并行列的具体代码,供大家参考。具体内容如下

  前两天项目需要合并表单,特此记录以备后用。

  首先,我在element-ui中使用了el-table。文档中提供的span-method方法可以合并行或列。如果不熟悉,可以看看element document的地址。但是文档中提供的例子非常简单,无法满足复杂页面的需求,所以需要对数据进行处理。

  代码如下:

  getListDataForRowAndColumn(data){

  让自我=这个;

  self . rowandcolumn=[];

  self . rowloomcolumn=[];

  for(var I=0;I数据长度;i ) {

  if (i===0) {

  //如果是第一条记录(即索引为0时),数组加1

  self . rowandcolumn . push(1);

  self . pos=0;

  self . rowloom column . push(1);

  self . post=0;

  }否则{

  //data[i]。typeDesc是你从接口读取的字段信息,下同。

  if (data[i].typeDesc===data[i - 1]。typeDesc) {

  //如果typeDesc相等,则累加,并推0

  self.rowAndColumn[self.pos]=1

  self.rowAndColumn.push(0)

  if (data[i].areaDesc===data[i - 1]。areaDesc) {

  //如果areaDesc相等,则累加,并推0

  self . rowloom column[self . post]=1

  self . rowloom column . push(0)

  }否则{

  self . rowloom column . push(1)

  self.posT=i

  }

  }否则{

  //不等推1

  self.rowAndColumn.push(1)

  self . pos=I;

  self . rowloom column . push(1)

  self.posT=i

  }

  }

  }

  },

  上面的代码是整理你的数据,注释写的很清楚。相信大家都能理解他们。如果真的不好,就把它们打印出来看看。

  在对数据进行处理后,使用上述跨度法。如图所示:

  ObjectSpanMethod方法如下:

  objectSpanMethod({ row,column,rowIndex,columnIndex }) {

  让self=这个

  if (columnIndex===1) {

  if(self . rowandcolumn[rowIndex]){

  let rowNum=self . rowandcolumn[rowIndex];

  返回{

  rowspan: rowNum,

  rowNum 0?1 : 0

  }

  }

  返回{

  rowspan: 0,

  列跨度:0

  }

  }

  if (columnIndex===2) {

  if(self . rowloom column[rowIndex]){

  let roomNum=self . rowloomcolumn[rowIndex];

  返回{

  rowspan: roomNum,

  colspan: roomNum 0?1 : 0

  }

  }

  返回{

  rowspan: 0,

  列跨度:0

  }

  }

  },

  完成了。我们来看看效果图。

  注意,使用这种方法时,后端一定要排序后才能发出,否则页面可能达不到预期效果。因为我是从第二列开始合并的,所以objectSpanMethod方法中的columnIndex是从1开始的,这个可以根据你的实际情况。只需将从接口获得的数据放入getListDataForRowAndColumn方法中。记得定义rowAndColumn,rowRoomColumn。

  这就是本文的全部内容。希望对大家的学习有帮助,支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: