vue3中导出excel表格
时间: 2023-07-03 07:09:04 浏览: 238
Vue 3 中导出 Excel 表格可以使用一些第三方库来实现,比如 `xlsx` 和 `file-saver`。
首先安装这两个库:
```
npm install xlsx file-saver
```
然后在组件中引入这两个库:
```js
import XLSX from 'xlsx'
import FileSaver from 'file-saver'
```
接下来,我们可以定义一个方法来生成 Excel 文件:
```js
export default {
methods: {
exportExcel() {
const data = [
['Name', 'Age'],
['Tom', 18],
['Jerry', 20]
]
const workbook = XLSX.utils.book_new()
const sheet = XLSX.utils.aoa_to_sheet(data)
XLSX.utils.book_append_sheet(workbook, sheet, 'Sheet1')
const excelBuffer = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' })
const excelBlob = new Blob([excelBuffer], { type: 'application/octet-stream' })
FileSaver.saveAs(excelBlob, 'data.xlsx')
}
}
}
```
在这个方法中,我们定义了一个数据,然后用 `XLSX.utils.aoa_to_sheet` 方法将数据转换为工作表。接着使用 `XLSX.utils.book_append_sheet` 把工作表添加到工作簿中。最后使用 `XLSX.write` 方法将工作簿写入一个字节数组,再用 `Blob` 对象创建一个文件对象,最后使用 `FileSaver.saveAs` 方法将文件保存到本地磁盘。
最后,在组件模板中添加一个按钮来触发导出 Excel 文件操作:
```html
<template>
<button @click="exportExcel">Export Excel</button>
</template>
```
阅读全文