Vue3+element实现表格数据导出

 更新时间:2023年07月27日 10:30:50   作者:DCodes  
这篇文章主要为大家学习介绍了Vue3如何利用element实现表格数据导出功能,文中的示例代码讲解详细,感兴趣的小伙伴快跟随小编一起学习一下吧

实现效果

导出后的效果:

步骤

第一步:安装依赖

npm install --save xlsx file-saver

第二步:给表格添加id,导出的时候需要用到

  <!-- 导出按钮 -->
 <el-button type="primary" @click="exportExcel">导出</el-button>
 <!-- 表格 -->
     <el-table 
     id="out-table"      // 添加id 这一步很重要
     :data="PowerList" border  
     style="width: 100%" 
     class="tableBox">
      </el-table>
      <!-- 表格end -->

第三步:引入依赖

// 引入导出Excel表格依赖
import * as FileSaver from "file-saver";
import * as XLSX from "xlsx";

第四步:导出

// 导出表格  按钮点击后触发事件
const exportExcel = () => {
        /* 从表生成工作簿对象 */
        var wb = XLSX.utils.table_to_book(document.querySelector("#out-table"));
        /* 获取二进制字符串作为输出 */
        var wbout = XLSX.write(wb, {
            bookType: "xlsx",
            bookSST: true,
            type: "array"
        });
        try {
            FileSaver.saveAs(
            //Blob 对象表示一个不可变、原始数据的类文件对象。
            //Blob 表示的不一定是JavaScript原生格式的数据。
            //File 接口基于Blob,继承了 blob 的功能并将其扩展使其支持用户系统上的文件。
            //返回一个新创建的 Blob 对象,其内容由参数中给定的数组串联组成。
            new Blob([wbout], { type: "application/octet-stream" }),
            //设置导出文件名称
            "idea.xlsx"
            );
        } catch (e) {
            if (typeof console !== "undefined") console.log(e, wbout);
        }
        return wbout;
      }

这种导出方式跟渲染的表格数据是关联 ,如果想要全部导出,可以查询所有再导出。有些情况下,表格数据是后台接口返回的,这个时候需要调用接口来导出表格,关于调用后台接口实现Excel导出功能请看另一篇:调用后台接口实现Excel导出功能以及导出乱码问题解决

到此这篇关于Vue3+element实现表格数据导出的文章就介绍到这了,更多相关Vue3 element表格数据导出内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • VUE配置history路由模式配置详细举例

    VUE配置history路由模式配置详细举例

    这篇文章主要给大家介绍了关于VUE配置history路由模式配置的相关资料,History模式是Vue路由的另一种模式,在History模式下URL中的路径不再使用#符号,而是直接使用正常的路径形式,需要的朋友可以参考下
    2023-12-12
  • Vue项目中封装axios的方法

    Vue项目中封装axios的方法

    这篇文章主要介绍了Vue项目中封装axios的方法,axios 是一个轻量的 HTTP客户端,基于 XMLHttpRequest 服务来执行 HTTP 请求,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • vue实现动态添加数据滚动条自动滚动到底部的示例代码

    vue实现动态添加数据滚动条自动滚动到底部的示例代码

    本篇文章主要介绍了vue实现动态添加数据滚动条自动滚动到底部的示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • 利用v-viewer图片预览插件放大需要预览的图片

    利用v-viewer图片预览插件放大需要预览的图片

    本文介绍了v-viewer插件的安装和使用步骤,包括npm安装、在main.js文件中全局引入,以及常用的三种使用方式,文章提供了简单的布局页面效果,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • vue之proxyTable代理超全面配置方式

    vue之proxyTable代理超全面配置方式

    本文作者分享了使用Vue进行代理配置的个人经验,介绍了如何使用proxyTable进行跨域请求配置,并提供了具体的配置文件和使用方法,便于同行参考和学习
    2024-10-10
  • vue前端框架—Mint UI详解(更适用于移动端)

    vue前端框架—Mint UI详解(更适用于移动端)

    这篇文章主要介绍了vue前端框架—Mint UI的详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • vue-openlayers实现地图坐标弹框效果

    vue-openlayers实现地图坐标弹框效果

    这篇文章主要为大家详细介绍了vue-openlayers实现地图坐标弹框效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • Vue自定义可以选择日期区间段的日历插件

    Vue自定义可以选择日期区间段的日历插件

    这篇文章主要为大家详细介绍了Vue自定义可以选择日期区间段的日历插件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • Vue中的默认插槽详解

    Vue中的默认插槽详解

    在 Vue 中,插槽(Slot)是一种非常强大且灵活的机制,用于在组件中插入内容,默认插槽是在父组件中传递内容给子组件时使用的一种方式,这篇文章主要介绍了Vue中的默认插槽详解,需要的朋友可以参考下
    2024-01-01
  • 解决vue组件props传值对象获取不到的问题

    解决vue组件props传值对象获取不到的问题

    这篇文章主要介绍了vue组件props传值,对象获取不到的问题,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-06-06

最新评论