浏览:262 时间:2025-09-18
Node-xlsx是一个轻量级的Node.js库,用于读取和生成Excel文件(.xlsx格式)。它无需依赖外部工具,兼容浏览器和Node.js环境,包括微信小程序。
npm install node-xlsx
以下代码演示如何生成一个简单的Excel表格:
const xlsx = require('node-xlsx');
// 定义数据
const data = [
['姓名', '年龄', '城市'],
['张三', 25, '北京'],
['李四', 30, '上海']
];
// 生成表格Buffer
const buffer = xlsx.build([{name: 'Sheet1', data: data}]);
// 保存文件(Node.js环境)
fs.writeFileSync('output.xlsx', buffer);
通过传递多个工作表对象数组,可以创建包含多个Sheet的Excel文件:
const sheet1 = {name: '用户数据', data: userData};
const sheet2 = {name: '订单数据', data: orderData};
const buffer = xlsx.build([sheet1, sheet2]);
Node-xlsx支持基本的样式设置,如字体、颜色、对齐方式等:
const style = {
fill: {fgColor: {rgb: 'FFFF0000'}}, // 背景色
font: {bold: true, color: {rgb: 'FFFFFFFF'}}, // 字体
alignment: {horizontal: 'center'} // 对齐
};
// 在数据中指定样式
const data = [
[{v: '标题', s: style}, {v: '值', s: style}],
['数据1', 100]
];
在微信小程序中使用时,需注意:
// 小程序中保存文件示例
wx.getFileSystemManager().writeFile({
filePath: `${wx.env.USER_DATA_PATH}/output.xlsx`,
data: buffer,
encoding: 'binary'
})
• 使用描述性Sheet名称提升数据可读性
• 合理使用样式突出关键数据
• 添加错误处理机制增强稳定性
• 兼容性测试确保多环境运行
通过以上方法,您可以高效生成功能丰富的Excel文件,并确保在微信小程序中的完美运行。