vue 处理后台返回的表格流文件

112 阅读1分钟

export function monthlyparticulars1(params) { return request({ url: '', method: 'get', params: params, responseType:"blob" // 这是重点 }) }

this.fileConversion(this.tiek + '.xls',res) (文档名字,接口返回的文件)

  fileConversion(inputFileName,data){
      // let str = data.headers['content-disposition'];
      // 文件名
      let fileName = inputFileName;
      let blob = new Blob([data], {
          type:
              "application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
      });
      if (window.navigator.msSaveOrOpenBlob) {
          navigator.msSaveBlob(blob);
      } else {
          let elink = document.createElement("a");
          elink.download = fileName;
          elink.style.display = "none";
          elink.href = URL.createObjectURL(blob);
          document.body.appendChild(elink);
          elink.click();
          document.body.removeChild(elink);
          this.hint('导出成功', 'success',200)
      }
  },