vue + axios 通過Blob 轉換excel文件流 下載亂碼問題


vue + axios 通過Blob 轉換excel文件流 下載亂碼問題

1、先看后端返回的響應頭類型 Content-Type

 

 

 

 

2、Axios 請求類型 攜帶 responseType

responseType: 'json',  // default

 

`responseType` 表示服務器響應的數據類型,可以是 'arraybuffer', 'blob', 'document', 'json', 'text', 'stream'

 

切記:responseType: 'blob'

 

 

 

 

 

 

    
  _download(res, filename = `導出模板${format(Date.now())}`) {
      let blob = new Blob([res], { type: 'application/vnd.ms-excel' });

      let elink = document.createElement('a');
      elink.download = filename;
      elink.href = window.URL.createObjectURL(blob);
      elink.style.display = 'none';
      document.body.appendChild(elink);
      elink.click();

      document.body.removeChild(elink);
      window.URL.revokeObjectURL(blob);
    },
2020年8月21日17:26:00
新需求,下載excel模板格式 xlsx
new Blob([res], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' });
改下type 屬性


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM