vue 下載execl文件

【接口是get請求,返回的是文件流】

1.【a標簽下載】點擊a標簽的時候嘉栓,瀏覽器自動彈出下載的確認框

<a :href="downLoadUrl+n.advancePaymentBillingId">下載賬單</a>

能夠看到自動下載的文件名稱熙涤,這個文件名稱我沒有做任何設置脓钾,應該是文件流中自帶的


2.【調接口下載】

export function download(url,data={}){

console.log(data)

axios({

method:"GET",

url:baseURL + url,

responseType:'blob',

headers: {

'Content-Type':'application/json',

'Authorization' :window.sessionStorage.getItem('token')

}

}).then((res) => {

var blob =new Blob([res], {type:'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8'})

var downloadElement =document.createElement('a');

var href =window.URL.createObjectURL(blob)//創(chuàng)建下載的鏈接

? ? ? ? ? downloadElement.href =href;

//導出有新舊2種獲取文件名的方式

? ? ? ? ? if(res.headers['content-disposition']){

var str = res.headers['content-disposition']

var arr =str.split("=");

var num =arr[1];

let formatString =escape(num)

downloadElement.download =decodeURI(formatString)

}else{

downloadElement.download = data.fileName +'.xls' //下載的文件名 ?注意:加.xls是兼容火狐瀏覽器

? ? ? ? ? }

document.body.appendChild(downloadElement);

downloadElement.click();//點擊下載

? ? ? ? ? document.body.removeChild(downloadElement);//下載完成移除元素

? ? ? ? ? window.URL.revokeObjectURL(href);//釋放掉blob對象

? ? ? ? ? if(this.loading !='' ||this.loading !=null ||this.loading !=undefined){

this.loading =false;

}

}).catch(error => {

console.log(error)

if(this.loading !='' ||this.loading !=null ||this.loading !=undefined){

this.loading =false;

}

})

}


vue頁面

//下載賬單

downloadBill(){

let {agentName,totalResult}=this;

let str=totalResult.billingStartTime.replace(/[\u4e00-\u9fa5|,]+/g,'')? +? '-'? +? totalResult.billingEndTime.replace(/[\u4e00-\u9fa5|,]+/g,'')

//設置下載后的文件的名稱

//拼接上名稱

//日期從表頭的賬期時間炬藤,取值虽界。表頭的賬期時間接口返回的格式是摄乒,startTime:2022年3月22日歹袁;endTime:2022年3月24日枷餐。我用正則去掉了中文靶瘸。且兩個日期用【中橫線】這個字符來連接

let post_data={

fileName:agentName+'_賬單_'+str

? }

this.$download('alliance-billing/platformProfitSharingAgentBilling/downloadAgentProfitSharingBill/'+the_billid,post_data).then((res) => {

let data=res.data;

}).catch(err=>{

})

},

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子怨咪,更是在濱河造成了極大的恐慌屋剑,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,406評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诗眨,死亡現(xiàn)場離奇詭異唉匾,居然都是意外死亡,警方通過查閱死者的電腦和手機匠楚,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,395評論 3 398
  • 文/潘曉璐 我一進店門巍膘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人芋簿,你說我怎么就攤上這事峡懈。” “怎么了与斤?”我有些...
    開封第一講書人閱讀 167,815評論 0 360
  • 文/不壞的土叔 我叫張陵逮诲,是天一觀的道長。 經(jīng)常有香客問我幽告,道長梅鹦,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,537評論 1 296
  • 正文 為了忘掉前任冗锁,我火速辦了婚禮齐唆,結果婚禮上,老公的妹妹穿的比我還像新娘冻河。我一直安慰自己箍邮,他們只是感情好,可當我...
    茶點故事閱讀 68,536評論 6 397
  • 文/花漫 我一把揭開白布叨叙。 她就那樣靜靜地躺著锭弊,像睡著了一般。 火紅的嫁衣襯著肌膚如雪擂错。 梳的紋絲不亂的頭發(fā)上味滞,一...
    開封第一講書人閱讀 52,184評論 1 308
  • 那天,我揣著相機與錄音钮呀,去河邊找鬼剑鞍。 笑死,一個胖子當著我的面吹牛爽醋,可吹牛的內(nèi)容都是我干的蚁署。 我是一名探鬼主播,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼蚂四,長吁一口氣:“原來是場噩夢啊……” “哼光戈!你這毒婦竟也來了哪痰?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,668評論 0 276
  • 序言:老撾萬榮一對情侶失蹤久妆,失蹤者是張志新(化名)和其女友劉穎妒御,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體镇饺,經(jīng)...
    沈念sama閱讀 46,212評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡乎莉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,299評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了奸笤。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惋啃。...
    茶點故事閱讀 40,438評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖监右,靈堂內(nèi)的尸體忽然破棺而出边灭,到底是詐尸還是另有隱情,我是刑警寧澤健盒,帶...
    沈念sama閱讀 36,128評論 5 349
  • 正文 年R本政府宣布绒瘦,位于F島的核電站,受9級特大地震影響扣癣,放射性物質發(fā)生泄漏惰帽。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,807評論 3 333
  • 文/蒙蒙 一父虑、第九天 我趴在偏房一處隱蔽的房頂上張望该酗。 院中可真熱鬧,春花似錦士嚎、人聲如沸呜魄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,279評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽爵嗅。三九已至,卻和暖如春笨蚁,著一層夾襖步出監(jiān)牢的瞬間睹晒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,395評論 1 272
  • 我被黑心中介騙來泰國打工赚窃, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留册招,地道東北人岔激。 一個月前我還...
    沈念sama閱讀 48,827評論 3 376
  • 正文 我出身青樓勒极,卻偏偏與公主長得像,于是被迫代替她去往敵國和親虑鼎。 傳聞我的和親對象是個殘疾皇子辱匿,可洞房花燭夜當晚...
    茶點故事閱讀 45,446評論 2 359

推薦閱讀更多精彩內(nèi)容