日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

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

vue-以文件流-blob-的形式-下載-導出文件操作

瀏覽:154日期:2022-12-13 13:03:50

vue項目中,經常遇到文件導出與下載,有時候是直接返回服務端的文件url,這樣直接以a鏈接下載,或者windown.open對不同類型的文件進行下載或預覽。但如果返回的是文件流,則需要做一些其他處理,具體形式如下:

1、首先要確定服務器返回的數據類型。

在請求頭中加入: config.responseType = ’blob’

有時候,不是所有接口都需要該類型,則可以對接口做一個判定:

// request攔截器service.interceptors.request.use( config => { // 根據接口判定 if ( config.url === ’/setting/exportData’ || config.url.indexOf(’export’) > -1 || config.url.indexOf(’Export’) > -1) { config.responseType = ’blob’ // 服務請求類型 } if (getToken()) { config.headers[’access_token’] = getToken() } return config }, error => { // Do something with request error // console.log(error) // for debug Promise.reject(error) })

2、接口請求獲取后端返回的文件流

// 導出 onExport() { if (this.dataList === ’’) { this.$message({ type: ’error’, message: ’暫無數據導出’ }) return } const fd = new FormData() fd.append(’id’, this.id) var exportFileName = ’導出文件名’ //設置導出的文件名,可以拼接一個隨機值 exportData(fd) .then(res => { // res.data 是后端返回的文件流 // 調用 downloadUrl 處理文件 downloadUrl(res.data, exportFileName) }) .catch(err => { this.$message({ type: ’error’, message: err.message }) }) },

3、文件處理downloadUrl--該方法可以寫為公共方法以便調用

// 使用iframe框架下載文件--以excel為例,可修改type與fileName選擇文件類型export function downloadUrl(res, name) { const blob = new Blob([res], { type: ’application/vnd.ms-excel’ }) // 構造一個blob對象來處理數據 const fileName = name + ’.xlsx’ // 導出文件名 const elink = document.createElement(’a’) // 創建a標簽 elink.download = fileName // a標簽添加屬性 elink.style.display = ’none’ elink.href = URL.createObjectURL(blob) document.body.appendChild(elink) elink.click() // 執行下載 URL.revokeObjectURL(elink.href) // 釋放URL 對象 document.body.removeChild(elink) // 釋放標簽}

4、在ie瀏覽器中存在兼容性問題,對downloadUrl做一些調整

// 使用iframe框架下載文件 -兼容性考慮export function downloadUrl(res, name) { const blob = new Blob([res], { type: ’application/vnd.ms-excel’ }) // for IE if (window.navigator && window.navigator.msSaveOrOpenBlob) { const fileName = name + ’.xlsx’ window.navigator.msSaveOrOpenBlob(blob, fileName) } else { // for Non-IE (chrome, firefox etc.) const fileName = name + ’.xlsx’ const elink = document.createElement(’a’) elink.download = fileName elink.style.display = ’none’ elink.href = URL.createObjectURL(blob) document.body.appendChild(elink) elink.click() URL.revokeObjectURL(elink.href) document.body.removeChild(elink) }}

總結:至此,以文件流的形式導出文件的一種方式便已經實現。

補充知識:vue中使用文件流進行下載(new Blob),不打開一個新頁面下載

我就廢話不多說了,大家還是直接看代碼吧~

export function download (url, params, filename) { Message.warning(’導出數據中’) return axios.get(url, { params: params, responseType:’arraybuffer’, }).then((r) => { const content = r.data const blob = new Blob([content],{type:’application/vnd.ms-excel’}) if (’download’ in document.createElement(’a’)) { const elink = document.createElement(’a’) elink.download = filename elink.style.display = ’none’ elink.href = URL.createObjectURL(blob) document.body.appendChild(elink) elink.click() URL.revokeObjectURL(elink.href) document.body.removeChild(elink) Message.success(’導出成功’) } }).catch((r) => { console.error(r) Message.error(’導出失敗’) })}

以上這篇vue-以文件流-blob-的形式-下載-導出文件操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
а√在线中文在线新版| 麻豆精品99| 国产福利电影在线播放| 国产一区一一区高清不卡| 国产日韩欧美三级| 日韩avvvv在线播放| 日韩精品a在线观看91| 日本不卡视频一二三区| 日本午夜精品一区二区三区电影| 日韩高清不卡一区| 亚洲日本久久| 日韩毛片一区| 亚洲1区在线| 国产美女精品视频免费播放软件| 欧美精品国产一区| 老鸭窝一区二区久久精品| 老鸭窝一区二区久久精品| 国产一区二区三区不卡视频网站| 精品亚洲精品| 欧洲一区二区三区精品| 99久久激情| 蜜桃久久av| 国产麻豆一区二区三区精品视频| 精品一区二区三区的国产在线观看| 裤袜国产欧美精品一区| 丝袜av一区| 国产农村妇女精品一二区| 一区二区不卡| 国产精品亚洲综合在线观看| 国产精品黑丝在线播放| 91精品亚洲| 综合亚洲色图| 久久精品毛片| 久久精品国产99久久| 久久aⅴ国产紧身牛仔裤| 日韩av中文字幕一区二区 | 亚洲综合精品四区| 色综合视频一区二区三区日韩 | 久久五月天小说| 日韩中文字幕区一区有砖一区| 91亚洲无吗| 中文在线中文资源| 日av在线不卡| 精品视频在线观看网站| 欧美日韩国产高清| 国产精品久久久久久久久久久久久久久| 久久久久久亚洲精品美女| 久久视频精品| 久久国产三级精品| 久久久91麻豆精品国产一区| 国产精品99一区二区三| 日韩黄色免费网站| 老司机免费视频一区二区| 国产999精品在线观看| 国产一区观看| 国产精品主播在线观看| 国产精品av久久久久久麻豆网| 日韩久久99| 综合日韩av| 91综合久久爱com| 亚洲五月婷婷| 国产精品一站二站| 91高清一区| 欧美激情福利| 丝袜诱惑制服诱惑色一区在线观看| 精品亚洲自拍| 日韩中文字幕| 亚洲一级影院| 久久精品五月| 久久国产精品毛片| 精品国产免费人成网站| 91精品啪在线观看国产爱臀| 亚洲午夜电影| 麻豆精品蜜桃视频网站| 在线看片一区| 久久精品国产www456c0m| 国产麻豆一区二区三区精品视频| 99视频精品全国免费| 国产精品一区二区三区www| 欧美午夜不卡| 国产夫妻在线| 国产精品一区2区3区| 亚洲婷婷丁香| 免费观看不卡av| 国产精品一级| 日韩精品免费视频一区二区三区| 99久久精品网| 精品福利久久久| 日韩va欧美va亚洲va久久| 99国产精品视频免费观看一公开| 久久久91麻豆精品国产一区| 日本国产亚洲| 免费人成网站在线观看欧美高清| 亚洲成人国产| 国产成人久久精品一区二区三区| 日韩国产91| 丝袜脚交一区二区| 91精品一区国产高清在线gif | 亚洲女同一区| 蜜桃av.网站在线观看| 久久精品一区二区国产| 视频一区日韩精品| 国产亚洲毛片在线| 欧美日韩在线二区| 亚洲午夜天堂| 精品网站999| 国产精品久久久网站| 97精品资源在线观看| 日韩美女国产精品| 亚洲精品第一| 在线视频精品| 欧美特黄a级高清免费大片a级| 久久在线视频免费观看| 成人啊v在线| 日韩一区电影| 欧美精品日日操| av高清不卡| 日韩在线看片| 九色porny丨国产首页在线| 国产成人精品一区二区三区视频| 国产精品日本一区二区不卡视频| 欧美一区成人| 国产精品一级| 麻豆国产一区| 国产成人精品亚洲线观看| 国产精品videossex| 国产精品一区二区免费福利视频| 久久国产精品免费一区二区三区| 日韩三级一区| 欧美久久一区二区三区| 国产精品一卡| 国产一区二区久久久久| 91av亚洲| 91久久久精品国产| 手机精品视频在线观看| 亚洲精品少妇| 国产精品日韩精品中文字幕| 国内一区二区三区| 欧美一区久久久| 亚洲大全视频| 91久久午夜| 亚洲精品日韩久久| 国产日韩视频| 伊人久久国产| 99国产精品久久久久久久| 一区二区三区四区日韩| 欧美亚洲色图校园春色| 国产精品视频首页| 福利在线免费视频| 亚洲性色视频| 亚洲精品黄色| 久久久国产精品网站| 四虎4545www国产精品 | 99在线|亚洲一区二区| 亚洲人成亚洲精品| 国产欧美日韩亚洲一区二区三区| 国产一区二区三区天码| 国内亚洲精品| 一区二区三区四区精品视频| 国产日韩免费| 日韩高清中文字幕一区二区| 亚洲少妇自拍| 欧美亚洲三区| 日韩在线不卡| 综合激情在线| 国内一区二区三区| 欧美日韩黑人| 欧美天堂在线| 国产一区二区精品福利地址| 激情久久久久久久| 91免费精品国偷自产在线在线| 福利片在线一区二区| 国产一区二区精品久| 亚洲高清影视| 欧美日本三区| 日韩精品午夜| 欧美精品中文字幕亚洲专区| 久久久久国产精品一区三寸| 中文字幕av亚洲精品一部二部| 麻豆91在线播放| 欧美日韩国产一区精品一区| 日韩av不卡一区二区| 久久久久久久久99精品大| 男女男精品网站| 精品国内亚洲2022精品成人| 伊人精品在线| 精品一区二区三区中文字幕 | 日本欧美韩国一区三区| 日韩欧美三级| 青青草伊人久久| 欧美va天堂| 欧美交a欧美精品喷水| 国产精品呻吟| sm捆绑调教国产免费网站在线观看| 亚洲一区有码| 日韩在线看片| 亚洲精选av| 久久久亚洲一区| 国产精品99久久免费| 午夜亚洲福利在线老司机|