Vue之将前端的筛选结果导出为csv文件

有导入就有导出哈!这里继导入之后记录一下导出的实现过程。

1.按钮部分:

<el-button class="filter-item" style="margin-left: 10px;" type="success" native-type="submit" @click="exportAll()" icon="el-icon-plus">
        导出
</el-button>

2.exportAll方法:

exportAll() {
    this.$confirm(‘现将导出全部已筛选结果, 是否继续?‘, ‘提示‘, {
      confirmButtonText: ‘确定‘,
      cancelButtonText: ‘取消‘,
      type: ‘warning‘
    }).then(() => {
      this.confirmExport();
    })
}

3.confirmExport方法:

async confirmExport() {
    const res = await this.$store.api.newReq(‘/xxx/xxxx/exportcsv‘).post(this.items);
    if (res != null) {
      this.download(res);
      this.$message({
        type: ‘success‘,
        message: ‘导出成功‘,
        duration: 1500
      })
    } else {
      this.$message.error("导出失败");
    }
}

4.download方法:

download (data) {
    if (!data) {
        return
    }
    let url = window.URL.createObjectURL(new Blob([data]));
    let link = document.createElement(‘a‘);
    link.style.display = ‘none‘;
    link.href = url;
    link.setAttribute(‘download‘, ‘导出结果.csv‘);
    document.body.appendChild(link);
    link.click();
    document.body.removeChild(link);
}

点击按钮出发点击事件exportAll,然后弹出询问框,点击确定导入文件,调用confirmExport发送请求,最后后台做完处理返回数据给前端,前端动态生成DOM节点,触发下载。

大概思路就是这样,仅供参考,大家可以在评论区交流哦。

原文地址:https://www.cnblogs.com/ailanlan/p/12172748.html

时间: 2024-11-06 04:00:55

Vue之将前端的筛选结果导出为csv文件的相关文章

oracle导出多CSV文件的靠谱的

oracle导出多CSV文件的问题 ---------------------------------------------------------------------- 用ksh脚本从oracle数据库中导出80w数据到csv文件,如用户给定名字为a.csv(文件最大4000行记录),则自动生产文件为a_1.csv,a_2.csv,...., a_200.csv 我已经实现了一个方法,但80w要导5小时,用户没法接受.如下: sqlplus -s user/pwd @${SqlDir}/

原创 Datareader 导出为csv文件方法

DataReader 是游标只读数据, 如果是大数据导出,用Datatable 将耗费巨大内存资源.因为Datatable 其实就是内存中的一个数据表 代码如下 /// <summary> /// SqlDataReader 生成csv文件 /// </summary> /// <param name="fileNameCsv">文件名(包含文件路径)</param> /// <param name="dr"&g

淘宝助理导出的csv文件使用的是什么编码,您猜?

今天下午用Java读取从淘宝助理 V4.3 Beta1导出的csv文件,出现中文乱码情况. 一看就是文件编码引起的,不清楚淘宝助理导出的csv文件使用了什么编码,到百度搜索了一下,看到一些相关文章,但测试发现都没有解决这个问题. 最后,我抱着试试看的态度,使用了 utf-16 ,我晕,正常显示中文了. 关于 utf-16 这种编码,这么多看来我还是第一次使用,之前最常用的是 gb2312 和 utf-8 之间的转换. 下面是一个简单的例子: try { DataInputStream in =

R: 导入 csv 文件,导出到csv文件,;绘图后导出为图片、pdf等

################################################### 问题:导入 csv 文件 如何从csv文件中导入数据,?参数怎么设置?常用参数模板是啥? 解决方案: yuan <- read.csv(file = "C:/Users/Administrator/Desktop/test1.csv",header = TRUE,sep = ",",dec = ".", stringsAsFactors

es实战之数据导出成csv文件

从es将数据导出分两步: 查询大量数据 将数据生成文件并下载 本篇主要是将第二步,第一步在<es实战之查询大量数据>中已讲述. csv vs excel excel2003不能超过65536, excel2007及以上版本支持1048576条数据.excel支持的数据量有限,并且生生成文件的速度比较慢. csv具有支持写入量大,文件较小的优点. 故选择csv作为导出文件类型. 导出文件的几种方式: 将数据从es中查询出来,在这个大前提下,对比导出文件的速度. 由前端处理 直接将数据返回给前端,

前端如何导出excel csv文件

------------恢复内容开始------------ 使用fetch方式导出文件, 用antdesign react UI设计 1. import fetch from 'isomorphic-fetch'; import {message} from 'antd'; 2. 本地测试时和测试环境url的配置 let url = process.env.NODE_ENV==='development' ? 'localhost' : window.location.origin; 3. f

Postgresql 将查询结果导出至csv文件

1.将查询结果导入某张表 create table file1( a integer, b character(5) ); insert into file1(a,b) select a,b from view 2.导出 导出之前为防止中文乱码,设置一下数据库编码 set client_encoding='GBK'; 使用copy 命令 执行命令copy file1to '/home/file.csv' with csv header;

按月将Windows日志导出至CSV文件

# 这个月的第一天 #..........................................到这里之前是取当年第一天 #(Get-Date 0).AddYears((Get-Date).Year - 1).AddMonths((Get-Date).Month - 2) # 这个月的最后一天 #......................................................................到这里之前是次年第一天 #(Get-Date 0).

将mysql中查询结果导出到csv文件

1.进入mysql:在cmd中输入mysql -u root -p,输入密码: 2.输入查询语句+"into outfile"+文件: select ip from iptable group by ip into outfile 'd:/ip.csv';