js-xlsx

由 SheetJS 出品的 js-xlsx 是一款非常方便的只需要纯JS即可读取和导出excel的工具库,功能强大,支持格式众多,支持xls、xlsx、ods(一种OpenOffice专有表格文件格式)等十几种格式。本文全部都是以xlsx格式为例。
官方github : https://github.com/SheetJS/js-xlsx 学习地址:https://www.jianshu.com/p/74d405940305

安装npm 包 xlsx

npm install xlsx

用法:

import * as XLSX from 'xlsx'
<input type="file" @change="handleFileUpload">
handleFileUpload(event) {
      const { files } = event.target;
      const vali = /\.(xls|xlsx)$/;
      if (files.length <= 0) {
        // 如果没有文件名
        return false;
      } if (!vali.test(files[0].name.toLowerCase())) {
        this.$Message.error('上传格式不正确,请上传xls或者xlsx格式');
        return false;
      }
      const file = event.target.files[0];
      const reader = new FileReader();
      console.log(file, 'file');

      reader.onload = (e) => {
        const data = e.target.result;//读取成功后result中的数据
        console.log(data, 'data');
        const workbook = XLSX.read(data, { type: 'binary' });//以base64方法读取 结果
        const sheetName = workbook.SheetNames[0]; //获取数据的表名
        const sheet = workbook.Sheets[sheetName]; //workSheet 是该excel表格中的数据
        const jsonData = XLSX.utils.sheet_to_json(sheet); //数据解析,输出JSON格式
        console.log(jsonData);
        // do something with jsonData
      };
      reader.readAsBinaryString(file);
    },

参考:

vue读取本地xlsx文件

如何使用JavaScript实现纯前端读取和导出excel文件