vue 2.x 導入excel獲取Excel數據

安裝:javascript

yarn add file-saver

yarn add xlsx

yarn add script-loader --dev

或者npm安裝:html

npm install -S file-saver xlsx(這裏其實安裝了2個依賴)

 npm install -D script-loader

在src下建立一個文件夾,包含兩個文件:java

Blob.js,Export2Excel.js下載地址:https://gitee.com/BenDanXianSheng/excel_relyon.gitgit

而後再main.js中導入這兩個文件;npm

code:json

HTML:
<input id="upload" type="file" @change="importfxx(this)" accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel" />
js:
<script>
export default {
  data() {
    return {};
  },
  methods: {
    importfxx(obj) {
      let _this = this;
      console.log("xxxxxxxxxxxxxxxxxxxxxxxxxxx1");
      let inputDOM = this.$refs.inputer;
      // 經過DOM取文件數據

      this.file = event.currentTarget.files[0];

      var rABS = false; //是否將文件讀取爲二進制字符串
      var f = this.file;

      var reader = new FileReader();
      //if (!FileReader.prototype.readAsBinaryString) {
      FileReader.prototype.readAsBinaryString = function(f) {
        var binary = "";
        var rABS = false; //是否將文件讀取爲二進制字符串
        var pt = this;
        var wb; //讀取完成的數據
        var outdata;
        var reader = new FileReader();
        reader.onload = function(e) {
          var bytes = new Uint8Array(reader.result);
          var length = bytes.byteLength;
          for (var i = 0; i < length; i++) {
            binary += String.fromCharCode(bytes[i]);
          }
          var XLSX = require("xlsx");
          if (rABS) {
            wb = XLSX.read(btoa(fixdata(binary)), {
              //手動轉化
              type: "base64"
            });
          } else {
            wb = XLSX.read(binary, {
              type: "binary"
            });
          }
          outdata = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]]); //outdata就是你想要的東西
          console.log(outdata)
        };
        reader.readAsArrayBuffer(f);
      };
      if (rABS) {
        reader.readAsArrayBuffer(f);
      } else {
        reader.readAsBinaryString(f);
      }
    }
  }
};
</script>
相關文章
相關標籤/搜索