首页 > 编程 > JavaScript > 正文

vue下载excel的实现代码后台用post方法

2019-11-19 11:36:16
字体:
来源:转载
供稿:网友

后台方法的参数必须是@RequestBody修饰的。

      前台关键代码:   

axios ( {     method : 'post',     url : api.exportPlayTime , // 请求地址     data : {      choose : type,      begindate : startDate,      enddate : endDate     },     responseType : 'arraybuffer',     observe: 'response',    } )     .then ( ( res ) => {      const fileName = ""+filename+".xlsx"      let blob = new Blob([res.data], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});      if ( 'download' in document.createElement ( 'a' ) ) { // 非IE下载       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 ) // 释放URL 对象       document.body.removeChild ( elink )      } else { // IE10+下载       navigator.msSaveBlob ( blob, fileName )      }     })
download(data) {    if (!data) {     return    }    let url = window.URL.createObjectURL(new Blob([data]))    let link = document.createElement('a')    link.style.display = 'none'    link.href = url    link.setAttribute('download', 'excel.xlsx')    document.body.appendChild(link)    link.click()   },

总结

以上所述是小编给大家介绍的vue下载excel的实现代码后台用post方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表