vue项目下的导入和导出
本篇博文主要记录我们在写项目的时候经常需要用到导入和导出。
导入

- 首先定义一个模态弹窗,一般情况下会使用一个
input(设置opacity:0)覆盖在显示的按钮上面
<!-- 3.导入 -->
<Modal title="批量导入" v-model="importVisual" width="450px" class="page-open-question-import">
<div class="import-btn">
<input
class="upload-input"
@change="fileChange($event)"
name="files"
type="file"
accept="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
/>
<Button
type="primary"
ghost
style="margin-left:40px"
icon="ios-cloud-upload-outline"
>点击上传Excel文件</Button>
<span class="file-name" v-show="fileName" :title="fileName">{{fileName}}</span>
</div>
<div class="import-text">
<span>文件小于10M,内容需符合模板规范</span>
<span>导入文档前请先添加好相应的类目</span>
</div>
<div class="import-example" @click="download">
<Icon type="ios-cloud-download-outline" />下载规范模板
</div>
<div slot="footer">
<Button @click="importVisual=false">取消</Button>
<Button type="primary" @click="importOk">确定</Button>
</div>
</Modal>
- 通过
type='file'的输入框获取到文件信息,一般情况下的导入接口使用的是formdata信息
// 导入选择文件
fileChange (el) {
this.importFile = el.target.files[0];
this.fileName = this.importFile.name;
},
// 确定导入
importOk () {
let param = new FormData();
param.append('file', this.importFile);
importData(param, {
kgId: this.kgId
}).then(res => {
// 导入成功后操作
......
this.importVisual = false;
this.$Message.success('导入成功!')
})
},
导出

get 请求
一般情况下,我们可以直接使用window.open()的方法来导出后端提供的get请求;
// 根据参数导出数据
downloadModel () {
window.open(
`${httpConfig.baseURL}/kg/dataset/data/template/${this.datasetId}`
);
}
post 请求
有的接口因为传参比较多,会需要使用post请求,那么上面的方法就不合适,通用的请求会出现乱码,大多数情况下我们会使用表单提交的方法
- 创建form表单请求的方法
// 导出文件
formSubmit (param, url) {
var $form = document.getElementById('exportForm');
if (!$form) {
$form = document.createElement('form');
$form.setAttribute('id', 'exportForm');
$form.setAttribute('method', 'post');
$form.style.display = 'none';
document.getElementById('exportParent').appendChild($form);
}
$form.setAttribute('action', url);
// 记得要把token信息带上
let token = this.$cookies.get('access_token');
param.access_token = token;
for (var obj in param) {
var input = document.createElement('input');
input.type = 'hidden';
input.name = obj;
input.value = param[obj];
$form.appendChild(input);
}
$form.submit();
}
- 导出的方法中使用
// 确认导出
exportOk () {
// 根据label获取id
......
// 请求导出
this.formSubmit(
{
kgId: this.kgId,
status: this.status,
categoryIds: this.categoryIds.join('|')
},
this.exportUrl
);
}
vue项目下的导入和导出的更多相关文章
- Vue框架下实现导入导出Excel、导出PDF
项目需求:开发一套基于Vue框架的工程档案管理系统,用于工程项目资料的填写.编辑和归档,经调研需支持如下功能: Excel报表的导入.导出 PDF文件的导出 打印表格 经过技术选型,项目组一致决定通过 ...
- 使用vue-cli脚手架初始化Vue项目下的项目结构
概述 vue-cli是Vue 提供的一个官方命令行工具,可用于快速搭建大型单页应用.该工具提供开箱即用的构建工具配置,带来现代化的前端开发流程.只需几分钟即可创建并启动一个带热重载.保存时静态检查以及 ...
- vue入坑教程(二)在vue项目中如何导入element以及sass
在项目中导入element以及sass.stylus等方便开发的工具以及UI框架 (1)如何在vue项目中导入elementUI框架 elementUI是饿了么团队开发出来基于vue的前端UI框架,其 ...
- vue + iview 怎样在vue项目下添加ESLint
参考:https://segmentfault.com/a/1190000012019019?utm_source=tag-newest 使用iview框架的MenuGroup标签,vscode报红, ...
- Linux 环境下 MySQ导入和导出MySQL的sql文件
将服务器上的文件导入或导出还需要使用工具传输到本机中,推荐使用winscp,与xshell搭配使用 1 导入数据库 两种方法 .首先建空数据库 mysql>create database abc ...
- windows下cmd导入与导出mysql 数据库
一.导出数据库 假设导到C:\ordersys.sql 1.CMD下:输入mysqldump -u 用户名 -p 导出的数据库名>c:\ordersys.sql 2.CMD会提示输入密码:输入密 ...
- vue项目多列导入
用axios.post传一个数组参数使用:JSON.stringify(this.params) <form> <span class="upimg">&l ...
- vue项目下使用iview总结
iview在IE浏览器下有问题,打开页面是空白
- Linux下oracle导入(exp)导出(imp)出现"Failed to open ...for reader/write"错误
随机推荐
- 「C++ 篇」答应我,别再if/else走天下了可以吗
每日一句英语学习,每天进步一点点: "Without purpose, the days would have ended, as such days always end, in disi ...
- HDU_5045_状态压缩dp
http://acm.hdu.edu.cn/showproblem.php?pid=5045 i从1到m依次更新,dp[i][j]表示更新到i题时,j表示每个人的答题状态,分别用0和1表示(因为每个人 ...
- Scala函数式编程(五) 函数式的错误处理
前情提要 Scala函数式编程指南(一) 函数式思想介绍 scala函数式编程(二) scala基础语法介绍 Scala函数式编程(三) scala集合和函数 Scala函数式编程(四)函数式的数据结 ...
- 你应该了解的 Java SPI 机制
前言 不知大家现在有没有去公司复工,我已经在家办公将近 3 周了,同时也在家呆了一个多月:还好工作并没有受到任何影响,我个人一直觉得远程工作和 IT 行业是非常契合的,这段时间的工作效率甚至比在办公室 ...
- OpenCV4系列之图像梯度和边缘检测
在图像处理中,求解图像梯度是常用操作. Sobel算子 Calculates the first, second, third, or mixed image derivatives using an ...
- Go语言SQL注入和防注入
Go语言SQL注入和防注入 一.SQL注入是什么 SQL注入是一种注入攻击手段,通过执行恶意SQL语句,进而将任意SQL代码插入数据库查询,从而使攻击者完全控制Web应用程序后台的数据库服务器.攻击者 ...
- codewars--js--Pete, the baker
问题描述: Pete likes to bake some cakes. He has some recipes and ingredients. Unfortunately he is not go ...
- Linux学习Day5:Vim编辑器、配置网卡、配置Yum软件仓库
今天首先学习Vim编辑器的使用,通过它可以对Linux系统的文件进行编写和修改.在Linux系统中一切都是文件,所以熟练掌握Vim编辑器的使用十分重要.最后通过配置主机网卡的实验,来加深Vim编辑器中 ...
- html网页基本结构
<!DOCTYPE> 不是 HTML 标签.它为浏览器提供一项信息(声明),即 HTML 是用什么版本编写的. HTML5 DOCTYPE 的 HTML 文档类型如下: <!DOCT ...
- opencv —— HoughCircles 霍夫圆变换原理及圆检测
霍夫圆变换原理 霍夫圆变换的基本原理与霍夫线变换(https://www.cnblogs.com/bjxqmy/p/12331656.html)大体类似. 对直线来说,一条直线能由极径极角(r,θ)表 ...