大佬教程收集整理的这篇文章主要介绍了node表格模块exceljs介绍1--基本使用,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
npm install exceljs
使用Npm命令安装之后,在所需要的文件中引入exceljs模块:
var Excel = require('exceljs');
var workbook = new Excel.Workbook();
workbook.creator = 'WJY';
//设置创建者workbook.lastModifiedBy = 'Her';
//上次修改人workbook.created = new Date(1985,8,30);
//创建时间workbook.modified = new Date();
//修改时间
更多详细的关于创建工作簿的属性设置请[参考官方][1]。
var sheet = workbook.addWorksheet('My Sheet');
// 创建标签为红色的表格
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}]});
// 通过表格名字(创建时的'My Sheet')
var worksheet = workbook.getWorksheet('My Sheet');
// 通过表格顺序数(id),即第几张表格,这里注意,exceljs不是从0开始计算,而是1。
var worksheet = workbook.getWorksheet(1);
1.worksheet.getCell('A1').value = 'value';
这种方式较为灵活,可填写任意位置的表格,利用循环嵌套等方式可生成想要的表格。
合并单元格使用: worksheet.mergeCells('I2:J2');
此时合并了I2 J2两个单元格。
2.如果数据是对象数组data=[{name:'a'},{name:'b'},{name:'c'}],也就是数据格式良好,有固定的键值对,那么推荐这种方式:
先定好表头
worksheet.columns = [ { header: '姓名',key: 'name',width: 10 },];
header:参数即为在表头里出现的值,key表示这列的值对应的对象的key(本例为name),width为表格列宽。
设置表头之后,使用addrow方法即可将数据写入表中,如下:
for(let i =0;i<data.length;i++){ worksheet.addRow(data[i]); }
var filename='test.xLSX';//生成的文件名 fpath=path.join(__dirname,'../download/'+fileName)//文件存放路径 workbook.xLSX.writeFile(fpath)//将workbook生成文件 .then(function() { //文件生成成功后执行的操作,这里是将路径返回客户端,你可以有自己的操作 res.send({filePath:filename}) });
有时候我们数据格式良好,但需要实现自定义表头(表头有合并单元格、多级表头等),这时该怎么办呢?
混合使用 worksheet.mergeCells()
及worksheet.getCell().value
设置表头,之后使用
worksheet.columns = [ { key: 'name',];
注意:这里没有header的key,如果有,将会覆盖我们的自定义表头内容。
后续正常@L_675_28@
for(let i =0;i<data.length;i++){ worksheet.addRow(data[i]); }
以上是大佬教程为你收集整理的node表格模块exceljs介绍1--基本使用全部内容,希望文章能够帮你解决node表格模块exceljs介绍1--基本使用所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。