vue 批量导入excel
时间: 2023-07-07 09:40:23 浏览: 205
你可以使用 js-xlsx 库来实现 Vue 批量导入 Excel 的功能。
首先,你需要安装 js-xlsx 库,可以通过 npm 进行安装:
```
npm install xlsx
```
然后,在你的 Vue 组件中,可以使用以下代码来实现批量导入 Excel:
```javascript
<template>
<div>
<input type="file" @change="handleFileUpload">
</div>
</template>
<script>
import XLSX from 'xlsx'
export default {
methods: {
handleFileUpload(event) {
const file = event.target.files[0]
const reader = new FileReader()
reader.onload = (event) => {
const workbook = XLSX.read(event.target.result, { type: 'binary' })
const sheetName = workbook.SheetNames[0]
const sheet = workbook.Sheets[sheetName]
const data = XLSX.utils.sheet_to_json(sheet, { header: 1 })
console.log(data)
// 在这里可以对获取到的数据进行处理
}
reader.readAsBinaryString(file)
}
}
}
</script>
```
上述代码中,我们首先引入了 js-xlsx 库,然后在 `handleFileUpload` 方法中,通过 `FileReader` 对象读取用户选中的 Excel 文件。接着,使用 `XLSX.read` 方法将文件内容转换为 `Workbook` 对象。然后,我们可以通过 `Workbook` 对象的 `SheetNames` 属性获取到 Excel 文件中所有的工作表名,再通过 `Workbook` 对象的 `Sheets` 属性获取到第一个工作表的数据。最后,使用 `XLSX.utils.sheet_to_json` 方法将工作表数据转换为 JSON 格式,方便我们进行后续的处理。
阅读全文