// 导出excel

download(){
  this.$confirm('是否导出当前查询结果?', '提示', {
    confirmButtonText: '确定',
    cancelButtonText: '取消',
    type: 'warning'
  }).then(() => {
    // 查询时间
    var timeStr = null
    if (this.qryForm.times != null && this.qryForm.times.length >1){
      timeStr = this.qryForm.times[0] + "," +this.qryForm.times[1]
    }
    // 选择的组织
    var organStr = ''
    if (this.qryForm.selectOrgan != null && this.qryForm.selectOrgan.length >0){
      for (let i = 0; i < this.qryForm.selectOrgan.length; i++) {
        if (i <this.qryForm.selectOrgan.length-1){
          organStr = organStr+this.qryForm.selectOrgan[i]+ ","
        }else{
          organStr = organStr+this.qryForm.selectOrgan[i]
        }
      }
    }
    // 选择的展示字段
    var field = ''
    if (this.showMyself != null && this.showMyself.length >0){
      for (let i = 0; i < this.showMyself.length; i++) {
        if (i <this.showMyself.length-1){
          field = field+this.showMyself[i]+ ","
        }else{
          field = field+this.showMyself[i]
        }
      }
    }
    this.$http({
      url: this.$http.adornUrl(this.$httpUrl.party_organ_team_members_url+'/TeamExcel'),
      method: "get",
      params: this.$http.adornParams({
        field: field,
        organs: organStr
      }),
      responseType: 'blob'
    }).then(res => {
      if (!res.data) {
        this.$message({
          type: 'error',
          message: '下载失败!'
        })
        return
      }
      const blob = new Blob([res.data])
      if (window.navigator.msSaveOrOpenBlob) {
        // 兼容IE
        navigator.msSaveBlob(blob, name);
      } else{
        const url = window.URL.createObjectURL(blob)
        const aLink = document.createElement('a')
        aLink.style.display = 'none'
        aLink.href = url
        aLink.setAttribute('download', '集团党组织班子成员明细表.xlsx')
        document.body.appendChild(aLink)
        aLink.click()
        document.body.removeChild(aLink)
        window.URL.revokeObjectURL(url)
      }
      this.$message({
        type: 'success',
        message: '下载成功!'
      })
    })
  })
}

更多推荐

后端传递数据给前端做导出Excel的前端vue方法代码