vue+iview中的table表格导出excel表格

一、iveiw框架中table中有exportCsv()方法可以导出.csv后缀文件,类似于excel文件,但是并不是excel文件。

二、实现table表格导出excel文件利用Blob.js 和 Export2Excel.js两个文件实现

  1.Blob.js 和 Export2Excel.js文件

    链接:https://pan.baidu.com/s/1PvP-NxmONNh71SRDvlL_9A 密码:3h82

  2.把Blob.js 和 Export2Excel.js文件添加到src文件夹下的assets的文件夹下的js文件夹里

    在项目下还有有以下操作:

    npm install -S file-saver //用来生成文件的web应用程序

    npm install -S xlsx //电子表格格式的解析器

    npm install -D script-loader //将js挂在在全局下

  

  3.在Export2Excel.js中配置

  

  这个地址和需要转换excel文件的页面的文件位置有关系,我的页面文件在assets同级文件夹pages下的home文件夹下。

  这个地址是Blob.js相对于导出excel文件页面的相对位置

  4.代码

  

 1 handleDownload() {
 2     this.downloadLoading = true;
 3     require.ensure([], () => {
 4         const {export_json_to_excel} = require(‘../../assets/js/Export2Excel‘) //这个地址和页面的位置相关,这个地址是Export2Excel.js相对于页面的相对位置
 5         const tHeader = ["序号", "客户", "产品型号", "系列号", "销售日期", "备注"]; //这个是表头名称 可以是iveiw表格中表头属性的title的数组
 6         const filterVal = ["index", "customerName", "machineModel", "seriesNumber", "shipmentTime", "remarks"]; //与表格数据配合 可以是iview表格中的key的数组
 7         const list = [{
 8                 "index": "1",
 9                 "customerName": "你好1",
10                 "machineModel": "你好2",
11                 "seriesNumber": "你好3",
12                 "shipmentTime": "你好4",
13                 "remarks": "你好5"
14             },
15             {
16                 "index": "2",
17                 "customerName": "hello world 1",
18                 "machineModel": "hello world 2",
19                 "seriesNumber": "hello world 3",
20                 "shipmentTime": "hello world 4",
21                 "remarks": "hello world 5"
22             },
23         ]; //表格数据,iview中表单数据也是这种格式!
24         const data = this.formatJson(filterVal, list)
25         export_json_to_excel(tHeader, data, ‘列表excel‘) //列表excel  这个是导出表单的名称
26         this.downloadLoading = false
27     })
28 },
29 formatJson(filterVal, jsonData) {
30     return jsonData.map(v => filterVal.map(j => v[j]))
31 }

5.看了一些前辈的博客,有些差异,自己摸索能够导出excel文件。

原文地址:https://www.cnblogs.com/aidixie/p/9606855.html

时间: 2024-10-15 18:56:02

vue+iview中的table表格导出excel表格的相关文章

Element-ui组件库Table表格导出Excel表格--存在重复数据问题

借鉴:https://www.jianshu.com/p/1971fc5b97ca https://blog.csdn.net/qq_40614207/article/details/94003793 贴出代码 // 定义导出Excel表格事件 exportExcel() { // 解决生成重复数据-因为使用l fixed属性 var fix = document.querySelector('.el-table__fixed') var wb // 判断要导出的节点中是否有fixed的表格,如

【前端】将前台table数据导出excel表格

1.首先引用jquery以及table2excel <script type="text/javascript" src="js/jquery.table2excel.min.js"></script> <script type="text/javascript" src="js/jquery.min.js"></script> 2.表格部分 <table lay-filt

java中使用jxl导出Excel表格详细通用步骤

该方法一般接收两个参数,response和要导出的表格内容的list. 一般我们将数据库的数据查询出来在页面进行展示,根据用户需求,可能需要对页面数据进行导出. 此时只要将展示之前查询所得的数据放入session中备份一份,在调用导出方法时,从session中获取即可, 如果为后台直接导出,直接查询数据库后将结果传入即可,当然也可以在导出Excel方法中查询. 查询方法: // 获取查询结果存入session中        Object resultList = request.getAttr

从SQL Server 2005 中 导入 导出 excel 表格

1.从 数据库 中 导出 excel  表格 定义 一个 gridview1 protected void Button1_Click(object sender, EventArgs e) //倒出数据 {     if (GridView1.Rows.Count == 0)   {       return;    }   else  {       GridView1.AllowPaging = false;//先将数据分页取消,才能全部导出数据      bind(); Export("

c# Datagridview控件导入/导出excel表格

在写商业软件的时候,我们会经常遇到对excel表格的操控,最常见的就是Datagridview控件导入/导出excel表格.我也同样遇到了.运用了自己的知识,再加上网上的[大部分]都过期的源码,自己写出了这两个方法,当然,和绑定数据库一样,都用到了databel类. 导入: //private string fileName; /// <summary> /// 将DataGridView中数据导入到Excel /// </summary> /// <param name=&

原生JavaScript 导出excel表格(兼容ie和其他主流浏览器)

因同事的需求是想前端导出excel表格,网上找了一些demo,自己修改了一下,可能以后会用到,记录下来吧,兼容ie和一些主流浏览器,ie可能会报错,原因参考 这里,edge 浏览器还没有办法导出,正在尝试... <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>table 导出excel表格</title>

PHP导入导出excel表格图片(转)

写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xml的也用过,csv的就更不用谈了.呵呵.(COM方式不讲了,这种可读的太多了,我也写过利用wps等进行word等的生成之类的文章 )但是在读的时候,只用过一种,具体是什么忘了,要回去翻代码了.基本上导出的文件分为两种:1:类Excel格式,这个其实不是传统意义上的Excel文件,只是因为Excel的兼容能力强,能够正确打开而已.修改这种文件后再保存,通常会提示你是否要转换成Excel文件.优

使用NPOI将数据库里信息导出Excel表格并提示用户下载

使用NPOI进行导出Excel表格大家基本都会,我在网上却很少找到导出Excel表格并提示下载的 简单的代码如下 1 //mvc项目可以传多个id以逗号相隔的字符串 2 public ActionResult execl(string ids) 3 { 4 List<PayLog> list = new List<PayLog>(); 5 string[] idsstring = ids.Split(new char[] { ',' }, StringSplitOptions.Re

laravel 5.4 导出excel表格

1.在laravel根目录下面找到一个composer.json文件 打开并在require下面加上一句话,如图所示: 注:以后这个excel的版本号可能还会修改 2.执行 composer install 3.在config下面的app.php中修改如下: 在providers 中加上 Maatwebsite\Excel\ExcelServiceProvider::class, 在aliases 中加上 "Excel" => Maatwebsite\Excel\Facades\