Web导出Excel表格

背景:

  1. 后端主导实现

流程:前端调用到导出excel接口 -> 后端返回excel文件流 -> 浏览器会识别并自动下载

场景:大部分场景都有后端来做

  1. 前端主导实现

流程:前端获取要导出的数据 -> 常规数据用插件处理成一个excel文件 -> 浏览器下载

场景:少数据量的导出

效果图 :

使用三方插件做需求

  1. 不考虑具体业务 实现一个能跑起来最简单的DEMO [基础环境 + 基础效果]
  2. 在基础DEMO基础上按照实际的业务数据去做对应的修改
TypeScript 复制代码
pnpm i xlsx
pnpm i @types/xlsx
TypeScript 复制代码
import { utils, writeFileXLSX } from 'xlsx'

const exportToExcel = ()=>{
  // 1. 创建一个新的工作簿
  const workbook = utils.book_new()
  // 2. 创建一个工作表 要求一个对象数组格式(可以根据需要创建多个)
  const worksheet = utils.json_to_sheet(
    [
      { name: '张三', age: 18 },
      { name: '李四', age: 28 }
    ]
  )
  // 3. 把工作表添加到工作簿  Data为工作表名称
  utils.book_append_sheet(workbook, worksheet, 'Data')
  // 改写表头
  utils.sheet_add_aoa(worksheet, [['姓名', '年龄']], { origin: 'A1' })
  // 4. 导出方法进行导出
  writeFileXLSX(workbook, '计费规则表.xlsx')
}

<el-button @click="exportToExcel">导出Excel</el-button>
相关推荐
运维阿江几秒前
【小白学HTML5】盒模型_第一讲
前端·html·html5
码界领航13 分钟前
【2025最新版】Chrome谷歌浏览器如何能恢复到之前的旧版本
前端·chrome
customer0842 分钟前
【开源免费】基于SpringBoot+Vue.JS个人博客系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源
乐多_L1 小时前
使用vue3框架vue-next-admin导出表格excel(带图片)
前端·javascript·vue.js
初尘屿风1 小时前
基于微信小程序的电影院订票选座系统的设计与实现,SSM+Vue+毕业论文+开题报告+任务书+指导搭建视频
vue.js·微信小程序·小程序
南望无一1 小时前
React Native 0.70.x如何从本地安卓源码(ReactAndroid)构建
前端·react native
Mike_188702783511 小时前
1688代采下单API接口使用指南:实现商品采集与自动化下单
前端·python·自动化
customer081 小时前
【开源免费】基于SpringBoot+Vue.JS打卡健康评测系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源
鲨鱼辣椒️面1 小时前
HTML视口动画
前端·html
一小路一1 小时前
Go Web 开发基础:从入门到实战
服务器·前端·后端·面试·golang