前言

分享一个Vue前端导出Excel文件的方法。记录学习!


功能需求:将表格的全部数据导出Excel格式的文件
前端:Vue3+Element-Plus

这个导出方法全部为前端操作,后端只需要传入表格数据到前端即可(基础的多表查询,用的内连接)

一、实现

1. 页面

2.代码

2.1 核心方法

/*** 表格数据导出Excel实际方法* @param list*/
const exportList = (list) => {//表格表头,导出表头let tableHeader = [['#', '资产编号', '资产名称', '资产类别', '资产型号', "资产单价", "资产金额","生产厂家", "生产日期", "购买日期", "购买人", "状态", "库存数量"]]list.forEach((item, index) => {let rowData = []//导出内容的字段rowData = [index + 1,item.zcbh,item.zcmc,item.name,item.zcxh,item.zcdj,item.zcje,item.sccj,currencyFormatDate(item.scrq),currencyFormatDate(item.gmrq),item.gmr,item.sts,item.kcsl,]tableHeader.push(rowData)})let wb = XLSX.utils.book_new()let ws = XLSX.utils.aoa_to_sheet(tableHeader)XLSX.utils.book_append_sheet(wb, ws, '资产设备基本信息') // 工作簿名称XLSX.writeFile(wb, '资产设备基本信息.xlsx') // 保存的文件名
}

将这个导出方法单独封装出来,带一个参数,即需要导出的所有数据的List集合,那么在调用的时候传参即可使用。

  1. tableHeader 定义表格的表头(此处并不是很严谨,因为还包含了表格的数据,暂时为空,后面遍历时传入)。
  2. rowData 是表格具体数据内容的数组,遍历时传入。
  3. tableHeader.push(rowData) 将内容放入tableHeader中,形成完整的表格数据。
  4. let wb = XLSX.utils.book_new() 定义表格实例。
  5. let ws = XLSX.utils.aoa_to_sheet(tableHeader) 创建工作簿,将表格内容放入工作簿。

2.2 调用方法

/*** 表格数据导出Excel调用方法*/
const exportExcel = () => {ElMessageBox.confirm('确定导出资产设备基本信息表吗?','提示',{confirmButtonText: '确定',cancelButtonText: '取消',type: 'warning',}).then(async () => {let list = [];const res = await request.get("asset/listAll");console.log(res)list = res.data.assetsAllListexportList(list);if (res.data.code === 200) {ElMessage({type: 'success',message: '即刻开始下载',})}}).catch(() => {})
}
  1. await request.get(“asset/listAll”) 请求后端接口,拿到结果。
  2. 将结果中的集合赋值给提前定义好的list数组list = res.data.assetsAllList。
  3. 用了MessageBox消息弹框,根据自己的实际需求哈
  4. 用到了异步等待,上面的request.get是自己封装的axios方法

3.演示



结束

以上为全部内容,欢迎讨论,记录学习!

Vue前端表格导出Excel文件相关推荐

  1. jQuery表格导出Excel文件以及网页内容导出Word文档

    前言: 我在这里给大家介绍一下我们能用代码实现的最简单的两种转换为Excel文件以及Word文档的方法. jQuery表格导出Excel文件 先来看看我们的层级划分: 如图所示: demo.css 代 ...

  2. vue下载表格为excel文件,需要后端传递list集合

    一次学习记录 原文链接:(16条消息) Vue--表格导出excel(导出table表格所有数据)_Hsu yiqi的博客-CSDN博客_vue表格导出excelhttps://blog.csdn.n ...

  3. 前端页面导出excel文件功能(导出)

    方法一: 一.后台管理系统中常有导出excel功能,可定义一个函数,在其他.vue文件中导入即可用. 1.1定义函数 export function excelDown(res, name = &qu ...

  4. vue+Springboot+easyexecl 导出excel文件打不开

    使用vue+Springboot+easyExecl导出文件时,在浏览器中下载的文件总是打不开,并且显示这个错误 1.我们逐步进行排查,首先看是不是后端的问题.这里附上我后端的代码 @GetMappi ...

  5. 前端下载导出Excel文件以及ie兼容问题

    项目开发的时候需要导出功能,一般情况有两种方法,一种是后端把数据弄好然后前端只是访问个地址就能实现下载,代码如下: var url="后端写好的访问地址"; window.loca ...

  6. vue前端下载本地excel文件

    <a class="template-download" href="./存货周转率及存货金额目标录入模板.xlsx" download><i ...

  7. php 将数组导出excel,#php 怎样将 数组导出excel文件#前端导出excel表格

    php 怎样将 数组导出excel文件 public function excel() { //在这里你要导出的数据 $data = M('pmproject',"pm_",MYS ...

  8. Vue+iview实现自定义格式导出Excel文件

    背景:项目中要实现一个导出Excel文件模板的功能,原来实现是通过后台生成然后前端请求下载,这样要消耗IO资源,然后看了一下之前项目的导出功能,发现原来Vue+iview可以实现本地数据导出,不过iv ...

  9. h5页面如何预览excel文件_如何使用JavaScript实现前端导入和导出excel文件?(H5编辑器实战复盘)...

    前言 最近笔者终于把H5-Dooring的后台管理系统初步搭建完成, 有了初步的数据采集和数据分析能力, 接下来我们就复盘一下其中涉及的几个知识点,并一一阐述其在Dooring H5可视化编辑器中的解 ...

最新文章

  1. 交通安全与智能控制专业学计算机吗,交通安全与智能控制专业就业方向及就业前景分析...
  2. python写扫雷脚本_Python自动扫雷实现方法
  3. MariaDB 求和,最大值,最小值,平均数
  4. 每日记载内容总结32
  5. mysql创建表选择字段的时候下尽量小
  6. Chrome 74 稳定版发布,Windows 10 支持黑暗模式
  7. 调优 | 别再说你不会 JVM 性能监控和调优了
  8. 注意判断js中使用正则表达式的转义字符,到底是对谁进行转义!!!
  9. 【操作系统笔记】中断系统
  10. oracle10gr2安装教程,Solaris10安装Oracle10gR2时的注意事项
  11. 编译XML-Parser报错
  12. 解压版tomcat7安装教程
  13. python--基本操作
  14. MAC QQ聊天记录迁移
  15. BUUCTF Cipher
  16. 深圳市福田高中2021年高考成绩查询,2020年深圳高中梯队排行一览!2021年十大或有新格局?...
  17. 超酷的iOS动画集合
  18. 通过excel生成不同dimens文件来实现安卓屏幕适配
  19. 开源企业内部文档共享平台(mm-wiki)
  20. 盈高入网规范管理平台linux,入网引导测试和修复测试

热门文章

  1. linux ajp集群,Tomcat6_Apache2.2_ajp负载均衡加集群实战
  2. html 组件化 编辑器,谈谈前端组件化
  3. Java解析excel的通用方法--基础版
  4. svn update中文报错_svn 报错 【总结】【重点】
  5. go使用 grom 用例
  6. Qt5.0行车记录仪项目(一)SQL数据库建立
  7. OSChina 周三乱弹 —— 不是你写的代码,修什么BUG
  8. 判断一棵树是否为二叉排序树
  9. (尚硅谷)javaweb学习笔记02-------JSP部分
  10. CSS——美化网页元素(字体样式,文本样式,阴影,超链接伪类,列表,背景,渐变)