vue 表格列表实现 excel导出

本文介绍了一种在Vue应用中实现列表数据导出为Excel的方法,无需后端提供接口。通过添加导出按钮,绑定点击事件,引入xlsx和file-saver库,创建htmlToExcels.js文件,将表格转换为Excel文件并下载。详细步骤包括添加按钮、安装依赖、编写导出函数等,最终实现从前端直接导出Excel表格。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:实现列表数据导出为excel      后端不提供导出接口   仅有返回的列表功能

参考文章:

vue实现导出excel_不安分的蜗牛的博客-CSDN博客_vue导出excel文件

vue导出Excel表格(超级简洁)_想见你只想见你的博客-CSDN博客_vue导出excel

目录

 

实现前的功能界面:

 实现步骤:

1.添加导出按钮(并绑定单击事件),并给表格添加id(原因见步骤5)

2. 下载依赖

3.在src文件夹中新建文件夹excel ,并编写htmlToExcels.js文件

 4.然后在main.js里面引入刚刚写好的那个js文件

5.在 导出 按钮所在的页面编写代码(在methods里面添加 exportExcel方法)

 6.完成该功能


 

实现前的功能界面:

 实现步骤:

1.添加导出按钮(并绑定单击事件),并给表格添加id(原因见步骤5)

        <div class="btn1">
          <button type="button" class="btn btn-info" style="margin-right: 10px;" @click="handleOpenAddDevice">添加设备</button>
          <button type="button" class="btn btn-success" style="margin-right: 10px;">导入</button>
          <button type="button" class="btn btn-danger" @click="exportExcel()">导出</button>
        </div>

2. 下载依赖

npm install --save xlsx file-saver

3.在src文件夹中新建文件夹excel ,并编写htmlToExcels.js文件

 在 htmlToExcels.js 下编写咱们的代码(可全部复制)

import FileSaver from 'file-saver';
import * as XLSX from 'xlsx'
export default {
  // 导出Excel表格
  exportExcel(name, tableName) {
    //name表示生成excel的文件名     tableName表示表格的id
    var sel = XLSX.utils.table_to_book(document.querySelector(tableName))
    var selIn = XLSX.write(sel, { bookType: 'xlsx', bookSST: true, type: 'array' })
    try {
      FileSaver.saveAs(new Blob([selIn], { type: 'application/octet-stream' }), name)
    } catch (e) {
      if (typeof console !== 'undefined') console.log(e, selIn) 
    }
    return selIn
  }
};


 4.然后在main.js里面引入刚刚写好的那个js文件

//全局导出excel
import htmlToExcels from './excel/htmlToExcels'
Vue.prototype.htmlToExcels = htmlToExcels

5.在 导出 按钮所在的页面编写代码(在methods里面添加 exportExcel方法)

    exportExcel(){
      this.htmlToExcels.exportExcel("监控点管理列表.xlsx", "#vcfResult");
        //第一个引号里面是表格导出时的名字
        //第二个是表格的id,这个插件是通过id导出的

    }

 6.完成该功能

 

 

 

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值