前端导出可修改样式的Excel表格
最近实现了一个纯前端下载Excel,并可以修改Excel样式的功能。由于实现过程比较曲折,没搜到较完整的示例,英文文档看起来也比较吃力,所以这里分享一个完整的示例。下面是两种方法分别介绍纯前端实现不修改样式和修改样式时导出Excel的方法: 使用SheetJS/js-xlsx( https://github.com/SheetJS/js-xlsx#input-type )导出Excel表格。 优点:简单。 缺点:免费版不支持修改表格样式。 安装:npm install xlsx。 性能:经测试,导出30多列,几百条数据的表格比较快;上千条大概需要等待3-5秒。 补充:支持很多种类的数据解析和导出,这里仅涉及导入二维数组,导出xlsx。持续更新中,最新的更新日期是2019年8月。 实现: 引入: import XLSX from 'xlsx' 输入(数据源): const sheetDatas = [ [ '序号, '姓名', '性别' ], [1, 'Lily', '女' ], [2, 'John', '男' ], [3, 'Mary', '女' ] ] 调用方法: const wb = XLSX.utils.book_new() // 创建一个工作簿 const ws = XLSX.utils.aoa_to_sheet(sheetDatas) // 使用二维数组创建一个工作表对象