vue 导出 流文件 生成表格

186 阅读1分钟
export function El(params) {
        return request({
            url: '',
            method: 'get',
            params: params,
            responseType:"blob" // 这个是重点
    })
}
     注意:这个时候返回的两个字段的  
    this.fileConversion(‘’ + '.xls',res)

     fileConversion(inputFileName,data){
          // let str = data.headers['content-disposition'];
          // 文件名
          let fileName = inputFileName;
          // new Blob([data] 注意这个里面的 data 是你返回的数据
          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)
          }
      }