支持IE浏览器下载文件--转成zip,excel,pdf

1. 应把请求头设置:responseType: 'blob'
const data = await defHttp.get({url: url, params:params,responseType: 'blob'}, {isTransformResponse: false})

服务器响应之后:
   if (typeof window.navigator.msSaveBlob !== 'undefined') {
      window.navigator.msSaveBlob(new Blob([data], {type: 'application/vnd.ms-excel'}), name + '.xls')
    } else {
      let url = window.URL.createObjectURL(new Blob([data], {type: 'application/vnd.ms-excel'}))
      let link = document.createElement('a')
      link.style.display = 'none'
      link.href = url
      link.setAttribute('download', name + '.xls')
      document.body.appendChild(link)
      link.click()
      document.body.removeChild(link); //下载完成移除元素
      window.URL.revokeObjectURL(url); //释放掉blob对象
    }

  

posted @ 2022-10-06 22:25  小白咚  阅读(79)  评论(0编辑  收藏  举报