当前位置: 首页 > article >正文

vue2 导出Excel文件

1.安装依赖

npm install xlsx file-saver

 2.使用

<template>
  <button @click="exportToExcel">导出Excel</button>
</template>

<script>
import * as XLSX from 'xlsx';
import { saveAs } from 'file-saver';
export default {
  methods: {
    exportToExcel() {
      // 假设你有一个表格数据的数组
      // const data = [
      //  ["姓名", "年龄", "职业"],
      //  ["Alice", 28, "Engineer"],
      //  ["Bob", 22, "Designer"]
      // ];

      let data = []
      let res.data = [
        { 
          hangingTime: "2025-01-20 16:00",
          codes: ["AB51KB16002534", "AB51KB16002278", "AB51KB16002604", "AB51KB16002284", "AB51KB16002570",…]
        },
        {
          hangingTime: "2025-01-21 16:00",
          codes: ["AB51LB16000881", "AB51LB16000877", "AB51LB16000879", "AB51LB16000829", "AB51LB16000830",…]
        },
        ...
      ]
      res.data.map((io) => {
         let newArray = io['codes'].map(item => [item])
         // console.log(newArray)
         data.push(['阳极下挂时间' + io.hangingTime], ['产品流水号'], ...newArray)
      })
      console.log(data)

      // 将数据转换为工作表
      const worksheet = XLSX.utils.aoa_to_sheet(data);
     
      // 创建工作簿并添加工作表
      const workbook = XLSX.utils.book_new();
      XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
     
      // 生成Excel文件
      const excelBuffer = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });
     
      // 使用blob和FileReader创建一个Blob URL
      const dataBlob = new Blob([excelBuffer], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8' });
      const blobUrl = window.URL.createObjectURL(dataBlob);
     
      // 使用saveAs下载文件
      saveAs(dataBlob, 'export.xlsx');
     
      // 清理
      window.URL.revokeObjectURL(blobUrl);
    }
  }
};
</script>

效果

参考文章

【Vue】导出Excel(xlsx和file-saver)_xlsx file-saver-CSDN博客

vue json格式导出excel文件_vue json转excel-CSDN博客 


http://www.kler.cn/a/542251.html

相关文章:

  • 可编程网卡芯片在京东云网络的应用实践【BGW边界网关篇】
  • 1312:【例3.4】昆虫繁殖
  • HTML之JavaScript对象声明
  • 从云原生到 AI 原生,谈谈我经历的网关发展历程和趋势
  • vcredist_x64.exe 是 Microsoft Visual C++ Redistributable 的 64 位版本
  • 【SQL server】关于SQL server彻底的卸载删除。
  • 自动化办公|xlwings快速入门
  • 物联网综合性应用之网关设计
  • Linux防火墙设置
  • 【PS 2022】Adobe Genuine Service Alert 弹出
  • 详细代码篇:python+mysql +h5实现基于的电影数据统计分析系统实战案例(二)
  • 100.14 AI量化面试题:模型蒸馏(Model Distillation)和模型微调(Fine-tuning)的异同点
  • 1.1 CXX-Qt入门指南
  • 网络工程师 (32)TRUNK
  • 收集一些嵌入式相关学习资料的网址(持续更新)
  • 【JVM详解四】执行引擎
  • webpack配置之---output.chunkLoading
  • 客户端布局 --- 左侧导航栏右侧内容页
  • iOS主要知识点梳理回顾-5-运行时方法交换
  • IntelliJ IDEA 安装与使用完全教程:从入门到精通
  • WebSocket 握手过程
  • C++设计模式 —— 建造者模式
  • ubuntu20.04适配LTAOM并运行
  • java项目之在线心理评测与咨询管理系统(源码+文档)
  • XZ_Mac电脑上本地化部署DeepSeek的详细步骤
  • 网格生成(meshing)