vue下载xlsx表格

vue下载xlsx表格

复制代码
// 导入依赖库
import XLSX from 'xlsx';
import FileSaver from 'file-saver';
methods:{
	btn(){
	let date = new Date()
    let Y = date.getFullYear() + '-'
    let M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
    let D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '
    var dates='体检接口_'+Y + M + D
		
		// 构建表格数据
        const header = ['序号', '系统编码', '系统名称', '编码', '名称', '单位', '单位转换','转换参数',];
            const data1 = this.rightArr.map((item,index) => [index+1, item.sysCode, item.sysName,item.code,item.name,item.unit,'','']);
            const worksheet = XLSX.utils.aoa_to_sheet([header, ...data1]);

            // 创建工作簿并保存到本地
            const workbook = XLSX.utils.book_new();
            XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
            const excelBuffer = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });
            // const date = new Date().toLocaleDateString();
            const fileName = `${dates}.xlsx`;//表格名称
            const blob = new Blob([excelBuffer], { type: 'application/octet-stream' });
            FileSaver.saveAs(blob, fileName);
	}
}
相关推荐
FungLeo11 分钟前
成为全栈·Vue 管理后台篇·Vue Router如何守住多角色后台边界
前端·javascript·vue.js·rbac·vue router·路由守卫·前端权限
FungLeo13 分钟前
成为全栈·Vue 管理后台篇·分页只显示第一页:从接口total 定位到前端修复
前端·vue.js·状态模式·分页·naive ui·服务端分页·前端问题排查
ZhengEnCi38 分钟前
苹果滑动为什么有「肉感」:橡皮筋越界阻尼与弹簧动画的物理原理
前端
Moment44 分钟前
不会后期的我,发现了一个开源胶片神器😍😍😍
前端·后端·开源
L1mbo1 小时前
Lite模式 缓解微信开发者工具卡顿,附 uni-app 实践方案
前端·微信小程序
FungLeo1 小时前
成为全栈·Vue管理后台篇·仪表盘不是几张卡片:组合统计接口与角色视图
前端·javascript·vue.js·rbac·仪表盘·管理后台·tanstack query
程序员大阳1 小时前
HTML+CSS+JS对话式实战(7)-学生端活动报名功能开发
javascript·css·html·活动报名
ruanno_top1 小时前
可搜索的下拉框,键盘按不动:焦点进了下拉,事件还挂在触发器上
vue.js
SameX1 小时前
HarmonyOS 做桌面卡片 onAddForm 要同步返回但数据在数据库里的解法
前端
deli0071 小时前
手机夜景模式为什么要举 3 秒?8 帧 RAW 堆栈 SNR 实测
前端