后台生成 xlsx 文件

简介: 后台生成 xlsx 文件

01


序言


我几个月前写过一篇文章: 在前端轻量化的导出表格数据  ,这篇文章的主要内容是将前端已经获取到的表格数据加工成 CSV 格式以导出到用户本地,但是对于一个做了分页处理的后台管理系统而言,前端并不是一次性的拿到所有数据,而这时如果用户需要粗暴的一次性导出所有表格数据( 包括没有加载到前端的数据 )呢,我们肯定是直接在后台操作比较好。


如果你看过上一篇文章,也许你会问:我们能否在后台依然将数据导出为 CSV 格式的文件呢? 答案是:当然可以。不过上一篇文章已经说明了怎么去处理 CSV 格式,这篇文章就不再重复说明,而是换成了 xlsx 格式的文件。


这里主要选择 js-xlsx 和 exceljs 这两个库来进行操作并简要说明。


02


js-xlsx


对于处理 Excel 来说 js-xlsx 大概是 star 数最多的一个库了,废话不多说,直接上代码。


我们先创建简单的测试数据:


 然后建立一个简单的 http 服务器生成 xlsx 文件并作为响应返回给用户:

重点看下红色标记处即可,相应操作非常简单,并且我已经做了注释说明,用户只要请求这个地址就会自动下载该 xlsx 文件。


对于 js-xlsx 这个库,我不得不说的是虽然文档写了很多,但其实效果并不怎么样,我也并不怎么喜欢这个库。



03


exceljs


相比于上面的 js-xlsx ,我更喜欢也推荐大家使用 exceljs 这个库。


测试数据:


后台操作:

同样重点关注红色圈中的内容,你可以看到我能够很方便的设置行或列的宽高、及其是否隐藏等属性,并且操作数据也很自然,最后显示的效果:

除此之外,exceljs 对于某行、某列、某个具体的单元格都可以很灵活的设置其样式( 是否加粗、宽高多少、边距多少、什么颜色、什么字体等等 )或者统计行列,合并单元格等等,总之是非常优秀的,并且其文档比 js-xlsx 好太多。


全篇完。

目录
相关文章
|
7月前
|
前端开发 UED
前端解析Excel文件
前端解析Excel文件
101 0
|
3月前
R Excel 文件
Excel 格式的文件主要是 xls 或 xlsx,这两种文件可以在 R 语言中导入 xlsx 库来实现直接的读取。
66 23
|
5月前
|
JSON JavaScript 数据格式
vue 电子表格Excel的上传导入、导出下载、读取本地Excel、json转Excel
vue 电子表格Excel的上传导入、导出下载、读取本地Excel、json转Excel
369 0
|
前端开发 JavaScript
纯前端用XLSX库导出excel,可含多个sheet
纯前端用XLSX库导出excel,可含多个sheet
682 0
|
Web App开发 移动开发 数据可视化
Echarts本地导入Excle表格作为数据服务器的解决方案(支持.xls和.xlsx格式)
Echarts本地导入Excle表格作为数据服务器的解决方案(支持.xls和.xlsx格式)
145 0
|
前端开发
纯前端利用 js-xlsx 实现 Excel 文件导入导出功能示例(2)
详细说明请阅读:纯前端利用 js-xlsx实现 Excel 文件导入导出功能(1) 导入功能实现 官方示例:http://oss.sheetjs.com/js-xlsx/ ...
1818 0
|
JSON 前端开发 数据格式
纯前端利用 js-xlsx 实现 Excel 文件导入导出功能示例
相关教程:纯前端利用 js-xlsx 实现 Excel 文件导入导出功能示例(2)纯前端利用 js-xlsx(3) 之合并单元格纯前端利用 js-xlsx 之单元格样式(4)js-xlsx导出自定义合并列头实现思路js-xlsx工具类库 xlsxUt...
3172 0