el-table导出表格文件

发布时间:2024年01月22日

?先写一个download公共的方法

  download(file) {
        const blob = file
        const blobURL = window.URL ? window.URL.createObjectURL(blob) : window.webkitURL.createObjectURL(blob)
        const a = document.createElement('a')
        a.download = '故障的报表.xlsx'
        a.href = blobURL
        document.body.appendChild(a)
        a.click()
        document.body.removeChild(a)
        window.URL ? window.URL.revokeObjectURL(blobURL) : window.webkitURL.revokeObjectURL(blobURL) // 释放blob对象 避免内存泄漏
      },

?在api里写上导出接口

  // 列表导出接口
export function exportFaultReoirtList(data) {
    return request({
      url: `/name/name`,
      method: 'post',
      data,
      responseType: 'blob'
    })
  }

?点击导出提示并调用download方法

    // 导出
      async handleExport() {
          const response = await exportFaultReoirtList(this.listQuery);
          this.$confirm('是否导出文件?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning'
              }).then(() => { 
                this.download(response);
                this.$message({
                  type: 'success',
                  message: '导出成功!'
                });
              }).catch(() => {
                this.$message({
                  type: 'info',
                  message: '已取消导出'
                });          
              });
        },

?

文章来源:https://blog.csdn.net/Z_Gleng/article/details/135746626
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。