js-xlsx封装 使用
时间: 2023-07-31 09:06:22 浏览: 50
要使用js-xlsx库来进行Excel文件的读写操作,你可以将其封装成一个函数,以便在多个地方使用。以下是一个基本的封装示例:
```javascript
function readExcelFile(file, callback) {
const reader = new FileReader();
reader.onload = function(event) {
const data = new Uint8Array(event.target.result);
const workbook = XLSX.read(data, {type: 'array'});
const sheetName = workbook.SheetNames[0];
const worksheet = workbook.Sheets[sheetName];
const json = XLSX.utils.sheet_to_json(worksheet, {header:1});
callback(json);
};
reader.readAsArrayBuffer(file);
}
function writeExcelFile(data, filename) {
const workbook = XLSX.utils.book_new();
const worksheet = XLSX.utils.json_to_sheet(data);
XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
XLSX.writeFile(workbook, filename);
}
```
`readExcelFile`函数用于读取Excel文件,`writeExcelFile`函数用于写入Excel文件。你可以根据需要对这些函数进行修改和扩展。
使用示例:
```javascript
// 读取Excel
const input = document.querySelector('input[type="file"]');
input.addEventListener('change', function(event) {
const file = event.target.files[0];
readExcelFile(file, function(data) {
console.log(data);
});
});
// 写入Excel
const data = [
{name: 'John', age: 30},
{name: 'Jane', age: 25},
{name: 'Bob', age: 40}
];
writeExcelFile(data, 'output.xlsx');
```
注意,你需要先在HTML中添加一个文件输入框,才能读取Excel文件。