vue接收文件流格式文件进行下载导出

这段代码展示了如何在前端通过JavaScript实现Excel文件的下载。利用axios请求获取数据,然后创建Blob对象,设置下载链接和文件名,触发浏览器的下载行为。下载函数downloadSignedAmount()用于下载'签单金额统计'表格,而downloadReturnProfit()则用于下载其他可能的数据。
摘要由CSDN通过智能技术生成
exportData() {
      this.eLoading = true
      const query = {
        tableName: '签单金额统计'
      }
      downloadSignedAmount().then(res=>{
        const blob = new Blob([res.data],{type: 'application/xlsx'})
        const filename = query.tableName + '.xlsx'
        const link = document.createElement('a')
        link.href = URL.createObjectURL(blob)
        link.download = filename
        document.body.appendChild(link)
        link.click()
        window.setTimeout(function(){
          URL.revokeObjectURL(blob)
          document.body.removeChild(link)
        },0)
        this.eLoading = false
      }).catch(res => {
        this.eLoading = false
      })
    },
export function downloadReturnProfit(query) {
  return request({
    url: '/business/operatecontract/downloadReturnProfit',
    method: 'get',
    params: query,
    responseType: 'arraybuffer'
  })
}

Vue导出Excel文件文件可以通过以下步骤来实现: 1. 在前端请求的时候,将接收文件的格式设置为"application/octet-stream",这样可以接收文件。 2. 请求接口设置接收的数据格式为blob,以便能够正确处理文件数据。 3. 在点击导出按钮时发送请求到接口,获取到文件数据。可以使用两种方式来实现: - 方式一:将接口返回的文件使用Blob对象进行处理,设置文件类型为"application/vnd.ms-excel",然后创建一个URL对象,将Blob对象赋值给URL对象的参数,最后将URL转换为下载链接并触发下载操作。 - 方式二:在请求到数据之后,将文件赋值给一个变量,然后创建一个URL对象,将文件数据包装成Blob对象,设置文件类型为"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8",然后创建一个a标签,设置其href属性为URL对象的值,设置download属性为文件名及文件类型后缀,再将a标签添加到页面上,触发点击操作,最后移除a标签并释放URL对象。 这样就可以通过Vue导出Excel文件文件了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [vue导出数据为文件excel,后端返回的是文件](https://blog.csdn.net/weixin_42150719/article/details/124582921)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Vue实现excel文件导出功能(后端直接返回文件)](https://blog.csdn.net/weixin_40252368/article/details/124448552)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值