exceljs是一个读取,操作和编写电子表格数据和样式到XLSX和JSON,从Excel电子表格文件逆向工程设计的项目。之所以称它最强,是因为它的功能强大,简直就是专门为Excel打造的前端处理插件,到目前为止,笔者还尚未见过比这个更强大的前端插件,由于其强悍的前端处理能力,这就意味着有很多操作将减轻服务器端压力,而且性能更加出色!
https://github.com/exceljs/exceljs
安装我们当然是首选npm
npm install exceljs
var workbook = new Excel.Workbook();
workbook.creator = 'Me';workbook.lastModifiedBy = 'Her';workbook.created = new Date(1985, 8, 30);workbook.modified = new Date();workbook.lastPrinted = new Date(2016, 9, 27);
// 将工作簿日期设置为1904日期系统workbook.properties.date1904 = true;
“工作簿”视图控制Excel在查看工作簿时打开多少个单独的窗口。
workbook.views = [ { x: 0, y: 0, width: 10000, height: 20000, firstSheet: 0, activeTab: 1, visibility: 'visible' }]
var sheet = workbook.addWorksheet('My Sheet');
用addWorksheet函数的第二个参数设置工作表的选项。
// 创建一个红色标签颜色的工作表var sheet = workbook.addWorksheet('My Sheet', {properties:{tabColor:{argb:'FFC0000'}}});// 创建一个隐藏网格线的工作表var sheet = workbook.addWorksheet('My Sheet', {properties: {showGridLines: false}});// 创建一个第一行和列冻结的工作表var sheet = workbook.addWorksheet('My Sheet', {views:[{xSplit: 1, ySplit:1}]});
使用工作表id从工作簿中删除工作表。
// 创建工作表var sheet = workbook.addWorksheet('My Sheet');// 使用工作表ID删除工作表workbook.removeWorksheet(sheet.id)
// 迭代所有sheet// 注意:workbook.worksheets.forEach仍然可以工作,但这个方式更好workbook.eachSheet(function(worksheet, sheetId) { // ...});// 按名称获取表格var worksheet = workbook.getWorksheet('My Sheet');// 按ID获取表格var worksheet = workbook.getWorksheet(1);
。。。。。。以上只是部分文档中的介绍,感兴趣的小伙伴可以移步Github直接查看详细的文档,完整功能了解可参考下一个标题
PS:提供了中文文档
虽然以上功能还不能包括了Excel的所有功能,但也已经相当的丰富了!
在之前的文章中曾介绍过另一个不错的前端Excel插件,感兴趣的可以去看一看,exceljs拥有这么丰富的功能,如果你想开发一个功能强大的Web电子表格,不妨多尝试尝试!