美文网首页
流文件导出直接下载

流文件导出直接下载

作者: 追风筝的Hassan | 来源:发表于2020-02-18 17:04 被阅读0次

    文件的异步导出,此处是采用post的方法导出excel

     axios({
            method: 'POST',
            url: '接口链接',
            data: param,
            responseType: 'blob' //必须添加最后才能形成流文件
          }).then(response => {
            this.exportExcel(response, '生成文件的名称', this.searchForm.startTimeDate, this.searchForm.endTimeDate)
            this.loadingFull = false
          }).catch(error => {
            console.log(error)
            this.loadingFull = false
          })
    

    调用接口获取流文件之后获取数据,进行下载处理

     exportExcel (res, fileName, startTimeDate, endTimeDate) {
          return new Promise((resolve, reject) => {
            try {
              const blob = new Blob([res.data], {
                type: 'application/vnd.ms-excel'
              })
              const elink = document.createElement('a')
              // let timestamp = Date.parse(new Date())
              elink.style.display = 'none'
              elink.download = fileName + startTimeDate + '.' + endTimeDate + '.xlsx' // 文件名称
              elink.href = URL.createObjectURL(blob)
              document.body.appendChild(elink)
              elink.click()
              URL.revokeObjectURL(elink.href)
              document.body.removeChild(elink)
              return
            } catch (e) {
              console.log('导出错误')
              reject(e)
            }
          })
    

    文件下载ok

    相关文章

      网友评论

          本文标题:流文件导出直接下载

          本文链接:https://www.haomeiwen.com/subject/lzagfhtx.html