news 2026/4/16 12:53:49

vue3将el-table中数据导出为excel表格(数据自调整)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
vue3将el-table中数据导出为excel表格(数据自调整)

先下载插件

npm install xlsx --save
<template> <el-table v-loading="loading" element-loading-text="数据加载中..." :data="tableData" class="tabBox-style" > <el-table-column v-for="(item, index) in tabListProp" :key="index" :prop="item.label" :label="item.value" ></el-table-column> <el-table-column label="操作" align="center"> <template #default="scope"> </template> </el-table-column> </el-table> <div class="export" @click="exportTableToExcel"> <img src="@/assets/images/equipmentInfo/export.png" alt="" /> <div>导出数据</div> </div> </template> <script setup> /* element样式 */ import { ElMessage } from "element-plus"; /* excel */ import * as XLSX from "xlsx"; /* 表格Ref引用(用于获取表格DOM) */ const tableRef = ref(null); /* 导出表格数据为Excel */ const exportTableToExcel = () => { if (!tableData.value.length) { ElMessage.warning("暂无数据可导出"); return; } try { // 1. 处理数据:将表格数据转换为Excel所需格式(匹配表头) const exportData = tableData.value.map((row) => { const newRow = {}; tabListProp.value.forEach((item) => { newRow[item.value] = row[item.label] || "-"; // 无数据时显示"-" }); return newRow; }); // 2. 创建工作簿和工作表 const ws = XLSX.utils.json_to_sheet(exportData); // JSON转工作表 const wb = XLSX.utils.book_new(); // 新建工作簿 XLSX.utils.book_append_sheet(wb, ws, "设备数据"); // 将工作表添加到工作簿 // 3. 生成并下载Excel文件 const fileName = `设备数据_${new Date().getTime()}.xlsx`; // 文件名(加时间戳避免重复) XLSX.writeFile(wb, fileName); ElMessage.success("Excel导出成功"); } catch (error) { ElMessage.error("Excel导出失败:" + (error.message || "未知错误")); console.error("导出失败详情:", error); } }; </script>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/1 2:38:31

Signal-Android隐私通讯应用开发实战指南

Signal-Android隐私通讯应用开发实战指南 【免费下载链接】Signal-Android A private messenger for Android. 项目地址: https://gitcode.com/GitHub_Trending/si/Signal-Android Signal-Android作为一款专注于隐私保护的即时通讯应用&#xff0c;在开发过程中展现了卓…

作者头像 李华
网站建设 2026/4/16 10:54:11

家政服务系统源码、上门家政小程序源码、月嫂预约系统源码、保洁上门系统源码,springboot 框架+uniapp开发编写

家政上门系统源码适配小程序H5公众号APP端&#xff0c;包含管理端后台、师傅端、用户端。支持在线预约、师傅入驻、实名认证、员工管理、用户管理、订单管理、接单派单、提现管理、多端适配等。 家政系统技术参数&#xff1a; 1、WEB端技术采用&#xff1a;springboot 框架、…

作者头像 李华
网站建设 2026/4/14 2:09:35

freeswitch的proxy_media模式下video流的问题与修正

概述freeswitch是一款简单好用的VOIP开源软交换平台。测试过程中发现fs的proxy_media模式的一个bug&#xff0c;就是video媒体流的转发处理有问题。环境CentOS 7.9freeswitch 1.6.20问题fs配置为proxy_media模式&#xff0c;A路发起呼叫&#xff0c;A路远端的sdp中有audio和vid…

作者头像 李华
网站建设 2026/4/15 18:46:34

SnapGene 6.0.2 安装教程

软件介绍SnapGene是一款专业分子生物学软件&#xff0c;核心功能是DNA序列的可视化、分析与克隆实验设计。它允许用户在电脑上模拟并自动记录质粒构建、PCR克隆等操作&#xff0c;显著提升实验设计的效率和可追溯性。软件安装包领取感兴趣可直接无套路获取【SnapGene 6.0.2】安…

作者头像 李华
网站建设 2026/4/15 14:43:32

深度控制图像生成革命:Stable Diffusion v2-depth核心技术全解析

深度控制图像生成革命&#xff1a;Stable Diffusion v2-depth核心技术全解析 【免费下载链接】stable-diffusion-2-depth 项目地址: https://ai.gitcode.com/hf_mirrors/ai-gitcode/stable-diffusion-2-depth 你是否曾经为AI生成的图像缺乏真实的空间感而困扰&#xff…

作者头像 李华