记录经验:
以vue为例~~~
首先借助大佬的东西:https://github.com/SheetJS/js-xlsx
1.安装xlsx
npm install xlsx
2.导入为数组格式
import XLSX from "xlsx";
//拿到excel的file,不同框架的方法不一样,此处的element的上传组件拿到的,
<el-upload
ref="upload"
action="/wm/upload"
:show-file-list="false"
:on-change="readExcel"
:auto-upload="false"
style="display: inline-block"
>
转换数组
</el-upload>
// 读取excel
readExcel(file){ //此处接受的file,为文件上传的file
var reader = new FileReader();
//以二进制方式读取文件
reader.readAsBinaryString(file.raw);
reader.onload = (e) => {
//获取文件数据
const data = e.target.result;//e.target.value
//XLSX读取文件
const wb = XLSX.read(data, { type: "binary" });
//获取第一张表
const wsname = wb.SheetNames[0];
const ws = wb.Sheets[wsname];
var result = XLSX.utils.sheet_to_json(ws, { header: 1 });
this.dataDetail(result)
return result;
};
},
结果: