vue使用js-xlsx插件导出,生成合并单元格数组

/**
 * 生成合并单元格数组
 * 例
 let arr = [
    ['日期', '用户ID', '搜索页', '首页', '个人房源', '', '品牌公寓', '', '', '整租', '', '合租', '', '我要出租', '地图找房', '公租房', '', '人才房', '', '公共服务', '我的', '', '', '', '', '', '', '', '', ],
    ['', '', '', '', '列表页', '详情页', '列表页', '户型页', '详情页', '列表页', '详情页', '列表页', '详情页', '', '', '列表页', '详情页', '列表页', '详情页', '公积金', '关注房源页', '我的合同', '我的预约', '我的出租', '我的银行卡', '我的安居分', '我的通讯地址', '操作指引', '关于我们']
]
this.$mergesFormat(arr)
 */
const mergesFormat = (arr = [[], []]) => {
  let mergesArr = []
  arr[0].forEach((item, index) => {
    if (item) {
      mergesArr[mergesArr.length] = {
        s: {},
        e: {}
      }
      mergesArr[mergesArr.length - 1].s.c = index
      mergesArr[mergesArr.length - 1].s.r = 0
      mergesArr[mergesArr.length - 1].e.c = index
      mergesArr[mergesArr.length - 1].e.r = 0
    } else {
      mergesArr[mergesArr.length - 1].e.c = index
    }
  })
  mergesArr.forEach((item, index) => {
    if (arr[1][item.e.c] === '') {
      mergesArr[index].e.r = 1
    }
  })
  return mergesArr
}

猜你喜欢

转载自blog.csdn.net/Ajaxguan/article/details/82754510