在項目中遇到導出excel文件亂碼問題,按照網上的一些教程和方法,但最后下載下來的文件仍是亂碼,后來有大神相助,解決了這個問題,下面po出我的代碼:
exportTemplate(this.form1.templateId, { date: date }).then(res => { let fileName = res.headers['content-disposition'].split('=')[1] // 獲取文件名 let objectUrl = URL.createObjectURL(new Blob([res.data])) // 文件地址 const link = document.createElement('a') link.download = fileName link.href = objectUrl link.click() })
export function exportTemplate(templateId, query) { return request({ url: '/performance/template/export/' + templateId, method: 'get', params: query, responseType: 'blob' }) }
標紅部分是最后解決問題的關鍵,我嘗試過把它放在頁面的接口調用代碼中,依舊亂碼,但是放在這里,文件亂碼問題就沒有了,希望能對你們有幫助