Fork me on GitHub

vue xlsx组件 导出的excel表头插入内容

主要就是sheet_add_dom这个方法, dom是带有table标签元素的dom节点。
timeData是个二维数组:[["条件1","条件2"],["值1","值2"]];
如果是要在表格内容行里面插入内容,可以直接在与表格绑定的对象上,插入内容就可以了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*timeData 是二维数组*/
  getExcelWithInfo(timeData,dom, title = '默认标题', fn = () => {})
  {
    //得到一个worksheet对象
    //var data =[["按单据日期", "开始时间:", "2023-5-12", "结束时间:", "2023-5-31"]];
    const ws = XLSX.utils.aoa_to_sheet(timeData);
 
    //追加一个表格dom到 worksheet对象
    //origin 默认值是从表格的最开始即A1开始追加,会覆盖前一个表格
    //origin:-1 表示从上一个表格的末尾行追加
    //origin: {c:4, r:0} cellAddress 会从这个单元格的位置开始追加
    XLSX.utils.sheet_add_dom(ws, document.querySelector(dom), { origin: -1,raw: true })//原样格式
 
    let wb = XLSX.utils.book_new()
 
    var filename = title + ".xlsx"
    XLSX.utils.book_append_sheet(wb, ws, 'sheet1')
    let wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'array', bookSST: true, })
    fn && fn()
    try
    {
      FileSaver.saveAs(new Blob([wbout], { type: 'application/octet-stream' }), filename)
    }
    catch (e)
    {
      if (typeof console !== 'undefined') console.log(e, wbout)
    }
    return wbout
  },

 

posted @   HelloLLLLL  阅读(754)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示