Vue将页面导出为Excel(jquery.table2Excel.js在Vue中的运用)

本文介绍如何在Vue项目中利用table2excel.js插件导出复杂表格为Excel文件,包括安装配置步骤及自定义选项设置。

项目中有许多报表之类的统计 涉及表格跨行跨列较多故无法使用xlsx导出(因为需要一行一行处理跨行跨列),所以在Vue中整合了 jquery插件table2excel.js ,并且修改了部分源码支持自定义文件名、自定义sheet工作表名称、表格自动添加边框

效果图:

1. 首先需要在Vue中引入jquery

npm install jquery

2.将下载好的table2excel放到项目中 比如我们用的antd脚手架直接放到util下(下载链接在文末) 

3.修改table2excel源码,在第一行引入Vue中的jquery (最新文件已设置完毕,可忽略

import jQuery from 'jquery'

4.在项目入口main.js中引入

import './utils/table2excel' // global table2excel

5.在需要的页面中按需引入jquery,直接使用方法即可

比如,在demo.vue中使用table2excel:

1.引入jquery

import $ from 'jquery'

2.table中加入id

3.在methods方法中使用

methods: {
   
    exportExcel() {
      $("#aTable").table2excel({
         exclude: ".noExl",
         sheetName: "八项数据管控",
         filename: "八项数据管控",
         exclude_img: true,
         exclude_links: true,
         exclude_inputs: true
      });
    }
  }

table2excel下载链接: 
https://annong.lanzoub.com/iDU8jnarhah

ps: csdn上也有但是下载要钱(无力吐槽) 所以还是去云下去吧....

提供的引用内容中未提及使用vue table2excel根据Excel模板导出数据的方法。不过,一般来说,若要使用vue table2excel根据Excel模板导出数据,可按以下思路操作: 首先,确保已正确安装和引入了`table2excel`,其步骤为下载`jquery.table2excel.js`和`jquery.table2excel.min.js`,添加到Vue项目的`public`目录下新建的`table2excel`文件夹中,并在`index.html`中引用,之后重启项目 [^1]。 接着,准备Excel模板。可以在本地创建一个包含所需格式、样式和表头的Excel文件作为模板。 在代码中实现根据模板导出数据。由于`table2excel`本身没有直接支持模板导出的功能,可能需要借助其他库(如`xlsx`库)来读取模板文件并填充数据。以下是一个示例代码: ```javascript import XLSX from 'xlsx'; // 读取Excel模板文件 const templateFile = require('path/to/your/template.xlsx'); const workbook = XLSX.readFile(templateFile); // 获取模板中的工作表 const worksheet = workbook.Sheets[workbook.SheetNames[0]]; // 假设这里有要导出的数据 const data = [ { name: 'John', age: 25 }, { name: 'Jane', age: 30 } ]; // 将数据填充到工作表中 // 这里需要根据模板的结构和数据的对应关系进行填充 // 示例:将数据填充到从第二行开始的位置 data.forEach((row, index) => { const rowIndex = index + 2; // 第二行开始 worksheet[`A${rowIndex}`] = { v: row.name }; worksheet[`B${rowIndex}`] = { v: row.age }; }); // 更新工作表到工作簿 workbook.Sheets[workbook.SheetNames[0]] = worksheet; // 导出Excel文件 XLSX.writeFile(workbook, 'output.xlsx'); ``` ###
评论 19
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值