vue3.2中使用exportExcel这个方法导出excel
时间: 2023-08-28 18:03:23 浏览: 44
在Vue3.2中使用`exportExcel`方法导出excel需要借助js-xlsx库。首先,可以通过npm安装js-xlsx:
```
npm install xlsx
```
然后在需要使用`exportExcel`的组件中引入js-xlsx:
```javascript
import XLSX from 'xlsx'
```
接下来,定义一个`exportExcel`方法,该方法接收两个参数:数据和文件名。
```javascript
exportExcel(data, fileName) {
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`);
}
```
在这个方法中,我们首先通过`json_to_sheet`方法将数据转换成一个Excel工作表。然后创建一个新的工作簿,并将工作表添加到工作簿中。最后,使用`writeFile`方法将工作簿写入到Excel文件中。
最后,在需要导出Excel的地方调用`exportExcel`方法即可:
```html
<template>
<div>
<button @click="handleExport">导出Excel</button>
</div>
</template>
<script>
import XLSX from 'xlsx'
export default {
methods: {
handleExport() {
const data = [
{ name: '张三', age: 18 },
{ name: '李四', age: 20 },
{ name: '王五', age: 22 }
];
this.exportExcel(data, '学生信息');
},
exportExcel(data, fileName) {
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`);
}
}
}
</script>
```