后台的批量导入excel功能

技术栈: xlsx组件

安装&&使用

// 安装
  npm install xlsx --save
// 使用
  import XLSX from 'xlsx'

代码演示demo

export default {
  methods:{
    // 通过input的change事件拿到file文件
    // 批量导入excel
    guideUpload (event) {
      let file = event.target.files[0]
      this.fileName = file.name
      // -----提取excel数据中 --------
      let wb // 读取完成的数据
      let rABS = false // 是否将文件读取为二进制字符串
      const f = file
      let reader = new FileReader()
      reader.onload = e => {
        let data = e.target.result
        console.log(e.target)
        wb = XLSX.read(data, {
          type: 'binary'
        })
        // wb.SheetNames[0]是获取Sheets中第一个Sheet的名字
        // wb.Sheets[Sheet名]获取第一个Sheet的数据
        // 输出excelData数据
        let excelData = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]])
        console.log(excelData)
      }
      if (rABS) {
        reader.readAsArrayBuffer(f)
      } else {
        reader.readAsBinaryString(f)
      }
    }
  }
}

参考链接:

  • github-xlsx
  • xlsx-导入导出

你可能感兴趣的