vue xlsx导出 excel文件过大_Element+js-xlsx实现组件化excel导入导出

本文介绍了如何在Vue项目中利用js-xlsx库实现前端的Excel导入和导出功能,减轻后端负担。文章通过示例展示了从安装到实际使用的完整流程,并测试了不同数量数据导出的性能,即使导出1000条数据也保持流畅,且源码可供下载参考。
摘要由CSDN通过智能技术生成

前言:

以前excel都是使用后端java或者php等语言实现数据的导入和导出,现在可以通过vue的前端项目实现表格的导入和导出,减少后端的压力。同时也可以让前端更好的助力后端。

是原始(很棒)SheetJS / xlsx项目的分支。它被扩展以使单元格格式可以从.xlsx工作簿中读取和写入。

支持读取的格式:

Excel 2007+ XML格式(XLSX / XLSM)Excel 2007+二进制格式(XLSB)

Excel 2003-2004 XML格式(XML" SpreadsheetML")

Excel 97-2004(XLS BIFF8)

Excel 5.0 / 95(XLS BIFF5)

OpenDocument电子表格(ODS)

支持写入格式:

XLSX

CSV(和常规DSV)

JSON和JS对象(各种样式)

通过js-xlsx实现简单的数据的导入和导出。

安装

Npm安装,在项目根目录执行

npm install xlsx –save

实现安装

例子

1、 导出

acafb5a25ab23781138a656ddc189cfd.gif

2、 导入

0cf6fa3debc0784f9572fadd813fad22.gif

测试结果:

1、测试导出10条用户数据大小17kb、未卡顿。

2、测试导出50条用户数据大小28kb、未卡顿。

3、测试导出1000条用户数据大小278kb、未卡顿。

源码获取:

由于源码内容太多您可以访问euiadmin.com体验并下载源码进行查看。

导入组件位于:components/module/excel/ImportExcel.vue

导出组件位于:components/module/excel/OutEXcel.vue

组件已经提供注释,如有不解你也可以在今日头条给我留言。

结语

EuiAdmin致力于减少前端开发者的开发时间,特别是减少在JavaScript库的使用时间,你可以通过使用EuiAdmin获取强劲的tinymce富文本编辑器、vue-cookies的集成使用、美丽的Echarts图表、js-xlsx实现excel图表导入导出等丰富功能。

喜欢可以"点赞、关注、评论"三联一波

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue.js是一款流行的JavaScript框架,而xlsx则是一款用于处理电子表格文件的库。通过结合使用Vue.jsxlsx,我们可以很方便地实现Vue项目中导出Excel文件的功能。 要使用vue-xlsx导出Excel,首先需要在Vue项目中安装所需的依赖。可以使用npm或yarn命令来安装vue-xlsx库。 安装完成后,我们需要在要使用导出Excel功能的Vue组件中引入vue-xlsx。可以使用import语句将vue-xlsx库引入到当前组件中。 接下来,在Vue组件的methods中定义一个导出Excel的方法。在该方法中,我们可以使用xlsx库提供的函数来创建工作簿和工作表,并填充相关数据。 最后,我们可以调用导出Excel的方法来生成并下载Excel文件。可以使用xlsx库提供的函数将工作簿转换为二进制数据流,然后使用浏览器的下载功能来保存文件。 以下是一个简单的示例代码: ``` <template> <div> <button @click="exportToExcel">导出Excel</button> </div> </template> <script> import { writeFile } from 'xlsx' export default { methods: { exportToExcel() { // 创建工作簿和工作表 const workbook = XLSX.utils.book_new() const worksheet = XLSX.utils.aoa_to_sheet([ ['姓名', '年龄'], ['张三', 20], ['李四', 25], ['王五', 30] ]) // 将工作表添加到工作簿 XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1') // 将工作簿转换为二进制数据流 const excelData = XLSX.write(workbook, { type: 'binary' }) // 下载Excel文件 const fileName = 'data.xlsx' const blob = new Blob([s2ab(excelData)], { type: 'application/octet-stream' }) saveAs(blob, fileName) } } } </script> ``` 上述代码中,我们使用XLSX.utils.book_new()函数创建了一个新的工作簿,然后使用XLSX.utils.aoa_to_sheet()函数将数据转换为工作表。 最后,我们使用XLSX.utils.book_append_sheet()函数将工作表添加到工作簿中,然后使用XLSX.write()函数将工作簿转换为二进制数据流。 通过调用saveAs()函数,我们可以将数据流保存为Excel文件文件的名称为data.xlsx。 以上是使用vue-xlsx导出Excel的简单示例,根据实际需求,我们可以根据需要对数据进行处理和格式,以实现更复杂的导出功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值