成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術文章
文章詳情頁

vue中如何下載excel流文件及設置下載文件名

瀏覽:146日期:2022-06-10 13:56:10
概述

導出excel需求,當點擊下載模板或下載反饋結果,axios發起后端接口請求,返回的數據獲取 response 時出現亂碼,如圖:

vue中如何下載excel流文件及設置下載文件名

現總結如下幾種處理方法。

1、通過 url 下載

即后端提供文件的地址,直接使用瀏覽器去下載

通過window.location.href = 文件路徑下載

window.location.href = `${location.origin}/operation/ruleImport/template`

通過 window.open(url, ’_blank’)

window.open(`${location.origin}/operation/ruleImport/template`)

這兩種使用方法的不同:

window.location:當前頁跳轉,也就是重新定位當前頁;只能在網站中打開本網站的網頁。 window.open:在新窗口中打開鏈接;可以在網站上打開另外一個網站的地址。2、通過 a 標簽 download 屬性結合 blob 構造函數下載

a 標簽的 download 屬性是 HTML5 標準新增的,作用是觸發瀏覽器的下載操作而不是導航到下載的 url,這個屬性可以設置下載時使用新的文件名稱。

前端創建超鏈接,接收后端的文件流:

axios.get(`/operation/ruleImport/template`, {responseType: 'blob' //服務器響應的數據類型,可以是 ’arraybuffer’, ’blob’, ’document’, ’json’, ’text’, ’stream’,默認是’json’ }) .then(res => if(!res) returnconst blob = new Blob([res.data], { type: ’application/vnd.ms-excel’ }) // 構造一個blob對象來處理數據,并設置文件類型if (window.navigator.msSaveOrOpenBlob) { //兼容IE10 navigator.msSaveBlob(blob, this.filename)} else { const href = URL.createObjectURL(blob) //創建新的URL表示指定的blob對象 const a = document.createElement(’a’) //創建a標簽 a.style.display = ’none’ a.href = href // 指定下載鏈接 a.download = this.filename //指定下載文件名 a.click() //觸發下載 URL.revokeObjectURL(a.href) //釋放URL對象}// 這里也可以不創建a鏈接,直接window.open(href)也能下載 }) .catch(err => {console.log(err) })

注:請求后臺接口時要在請求頭上加{responseType: ’blob’};download 設置文件名時,可以直接設置擴展名,如果沒有設置瀏覽器將自動檢測正確的文件擴展名并添加到文件。

3、通過 js-file-download 插件

安裝:

npm install js-file-download --S

使用

import fileDownload from ’js-file-download’axios.get(`/operation/ruleImport/template`, {responseType: ’blob’ //返回的數據類型 }) .then(res => {fileDownload(res.data, this.fileName) })

以上就是vue中如何下載excel流文件及設置下載文件名的詳細內容,更多關于vue中下載excel流文件及設置下載文件名的資料請關注好吧啦網其它相關文章!

標簽: excel
相關文章:
主站蜘蛛池模板: 亚洲欧美一区二区三区国产精品 | 国产在线播放一区二区 | 在线黄色影院 | 在线免费黄网 | 欧美日韩一区二区在线 | 亚洲韩国欧美 | 午夜无遮挡怕怕怕免费视频 | 美女视频黄免费 | 99久久国产综合精品国 | 深夜福利亚洲 | 免费乱淫视频 | 国产自在线观看 | 波多野结衣免费观看视频 | 宅男噜噜噜一区二区三区 | 国产特黄一级一片免费 | 成人黄色在线观看 | 亚洲人成网7777777国产 | 国内精品久久久久久久aa护士 | 日韩三级视频 | 亚洲网站www | 在线播放一区二区三区 | 久久精品免费观看久久 | 18黄网站| 日韩欧美亚洲中字幕在线播放 | 日韩一中文字幕 | 91刘亦菲精品福利在线 | 欧美成人三级网站 | 4tube高清性欧美 | 亚洲精品久久久久综合91 | 在线免费成人网 | 在线观看免费为成年视频 | 久久一区二区精品综合 | 三级毛片三级毛片 | 亚洲国产精品日韩高清秒播 | 国产一区二区三区亚洲欧美 | 精品久久久久久久高清 | 免费人成在线观看 | 精品午夜国产在线观看不卡 | 欧洲色老头 | 91成人免费观看在线观看 | 国产性自拍 |