首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >vue.js纯前端处理如何将后台返回来的csv数据导出成csv文件

vue.js纯前端处理如何将后台返回来的csv数据导出成csv文件

作者头像
朱季谦
发布2019-09-18 15:51:01
发布2019-09-18 15:51:01
7.2K00
代码可运行
举报
运行总次数:0
代码可运行

需要实现一个下载csv文件的功能,但后台没有对这个下载文件进行处理,而是将csv数据传给前台而已,需要前台做一下处理。

这是按钮的代码:

<a> <el-button size="mini" class="custom-confirm" @click="downloadByPeople()" type="primary">下载执行人工时表</el-button></a>

通过异步请求获得的后台json返回数据是这样的格式:

只需要以下步骤就可以实现纯vue.js下载csv文件的功能:

代码语言:javascript
代码运行次数:0
运行
复制
 1  downloadByPeople(){

 3        this.$http.FileGet(this.pageParams).then(res => {
 4        const url = this.genUrl(res.data.data.workhour_csv_data, {});//{}指的是表头,res.data.data.workhour_csv_data是后台返回来的数据
 5        const a = document.createElement('a');
 6        a.href = url;
 7        a.download = "工时统计文件.csv";
 8        a.click();
 9        window.URL.revokeObjectURL(url);
10       });
11    },
代码语言:javascript
代码运行次数:0
运行
复制
1   genUrl(encoded, options) {
2       const dataBlob = new Blob([`\ufeff${encoded}`], { type: 'text/plain;charset=utf-8' });//返回的格式
3       return window.URL.createObjectURL(dataBlob);
4     },
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-09-06 ,如有侵权请联系 [email protected] 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 [email protected] 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档