npm 包 gbi_xlsx 是一个用于在前端操作 Excel 文件的工具,它基于 SheetJS 开源库而来,支持读取、导出、编辑 Excel 文件,可用于处理数据表格,生成导出报告等前端开发场景。
安装
在项目目录下,使用以下命令安装 gbi_xlsx:
npm install gbi_xlsx
使用
导入
在项目文件中引入 gbi_xlsx:
import * as XLSX from 'gbi_xlsx'
读取
使用 gbi_xlsx 读取 Excel 文件,可以获取表格中的数据,示例如下:
const reader = new FileReader() reader.onload = function(e) { const data = e.target.result const workbook = XLSX.read(data, {type: 'binary'}) console.log(workbook) } reader.readAsBinaryString(file)
FileReader
是原生 JavaScript 对文件读取的封装类,用于将文件读取为二进制字符串。workbook
是读取后的 Excel 数据表,可通过workbook.SheetNames
来获取表格的名称数组,通过workbook.Sheets[表格名称]
来获取指定表格的数据对象。
导出
使用 gbi_xlsx 导出 Excel 文件,可以将表格数据导出为 Excel 格式的文件,示例如下:
const worksheet = XLSX.utils.json_to_sheet(data) const workbook = XLSX.utils.book_new() XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1') XLSX.writeFile(workbook, filename)
XLSX.utils.json_to_sheet
用于将数据数组转换为 Sheet 表格对象。XLSX.utils.book_new
用于创建一个新的 Excel 文件实例。XLSX.utils.book_append_sheet
用于将 Sheet 表格对象添加到 Excel 文件实例中。XLSX.writeFile
用于将 Excel 文件实例下载为文件,第二个参数为文件名称。
编辑
使用 gbi_xlsx 编辑 Excel 文件,可以对表格进行数据修改,示例如下:
const workbook = XLSX.readFile(filename) const worksheet = workbook.Sheets.Sheet1 const data = XLSX.utils.sheet_to_json(worksheet, {header: 1}) data[0][2] = '新数据' const new_worksheet = XLSX.utils.json_to_sheet(data, {header: 1}) workbook.Sheets.Sheet1 = new_worksheet XLSX.writeFile(workbook, filename)
XLSX.readFile
用于读取本地 Excel 文件,返回 Excel 数据表对象。XLSX.utils.sheet_to_json
用于将 Sheet 表格对象转换为数据数组。- 可以对数据数组进行操作修改,然后再通过
XLSX.utils.json_to_sheet
转换为新的 Sheet 表格对象。 - 最后使用
XLSX.writeFile
将修改后的 Excel 文件实例下载为文件。
总结
本篇文章介绍了 npm 包 gbi_xlsx 的使用方式,包括导入、读取、导出和编辑四个方面,通过示例代码展示了常用的操作方式,对于前端开发中涉及到 Excel 文件的操作有一定的指导意义。同时,也可以参照 SheetJS 中文官方文档学习更多细节内容。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055d2481e8991b448dadb9