前端导出excel表格的方法

1.第一种方法:直接调接口进行导出,后端处理过了

 

 

<el-button
          type="primary"
          icon="el-icon-download"
          @click="Download()"
          style="margin-top:10px;padding:10px;width:100px;"
        >导出</el-button>

 Download(){
        const params ={}
        params.startTime=this.searchForm.startTime
        params.endTime=this.searchForm.endTime
        this.$confirm("是否确认导出?", "警告", {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
          type: "warning",
        })
          .then(function () {
            return  Common.downloadFile(`/cpBusiness/complete- 
  statistics/pda/completeExport`,params); 
          })
          .then((response) => {
            this.download(response.msg);
          })
          .catch(function () {});
      },

 2.第二种方法:从后端获取到文件流进行转换

                    

 this.downloadDoc()方法是固定转换文件流的方法

 downloadDoc(fileData, filename) {
        var blob = new Blob([fileData], {type: 'text/excel'})
        if (window.navigator.msSaveOrOpenBlob) {
          navigator.msSaveBlob(blob, filename)
        } else {
          var a = document.createElement('a')
          var url = window.URL.createObjectURL(blob)
          if (!url) {
            url = window.webkitURL.createObjectURL(blob)
          }
          a.href = url
          a.download = filename
          a.click()
          window.URL.revokeObjectURL(url)
        }
      },

注意:数据流导出的时候需要在接口请求设置那里加 response:blob,但是使用第一种方法直接导出不需要加

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值