项目下引入:npm install xlsx --save
需要调用组件处:import xlsx from 'xlsx'
页面添加:<input type="file" @change="changeFile" />
methods中添加函数:
changeFile(e) { var files = e.target.files; var fileReader = new FileReader(); fileReader.onload = function(ev) { try { var data = ev.target.result, workbook = xlsx.read(data, { type: 'binary' }), // 以二进制流方式读取得到整份excel表格对象 persons = []; // 存储获取到的数据 } catch (e) { console.log('文件类型不正确'); return; } // 表格的表格范围,可用于判断表头是否数量是否正确 var fromTo = ''; // 遍历每张表读取 for (var sheet in workbook.Sheets) { if (workbook.Sheets.hasOwnProperty(sheet)) { fromTo = workbook.Sheets[sheet]['!ref']; console.log(fromTo); persons = persons.concat(xlsx.utils.sheet_to_json(workbook.Sheets[sheet])); // break; // 如果只取第一张表,就取消注释这行 } } console.log(persons); }; // 以二进制方式打开文件 fileReader.readAsBinaryString(files[0]); }