导出Excel文件(文件流转换)

185 阅读1分钟

fileExport() {
      let url = "/api/admin/order_excel/get";
      this.$axios.post(url, "", { responseType: "blob" }).then((res) => {
        //console.log(res);
        let blob = new Blob([res.data], { type: "application/force-download" }); // Blob 对象表示一个不可变、原始数据的类文件对象
        //console.log(blob);
        let fileReader = new FileReader(); // FileReader 对象允许Web应用程序异步读取存储在用户计算机上的文件的内容
        fileReader.readAsDataURL(blob);
        //开始读取指定的Blob中的内容。一旦完成,result属性中将包含一个data: URL格式的Base64字符串以表示所读取文件的内容
        fileReader.onload = (e) => {
          let a = document.createElement("a");
          a.download = `订单信息.xlsx`;
          a.href = e.target.result;
          document.body.appendChild(a);
          a.click();
          document.body.removeChild(a);
        };
      });
    },