vue文件上传,文件打不开。文件上传 on-progress不触发

在这里插入图片描述

//文件上传带进度条<el-uploadv-model:file-list="fileList":limit="3":on-progress="beforeAvatarUpload"//on-progress 不触发,触发的关键在于覆盖原有的http请求:http-request="getFile":action="`${app.api}/student/student/import`"><span v-if="jinDu"><el-progress style="width: 245px; height: 19px" :text-inside="true" :stroke-width="20":percentage="percentage"/></span><span v-if="isUpload" style="color: #59c2c7;cursor:pointer;"@click="uploadChangeValue">导入学生学籍信息</span><template #tip><span style="color: #ff8282; margin-left: 20px">{{ importText }}</span></template></el-upload><script setup lang="ts">
let percentage = ref(0);
const beforeAvatarUpload = (event: any) => {debuggerlet loadProgress = Math.floor(event.percent); //这就是当前上传的进度//可以进行其他逻辑percentage.value = loadProgress;importText.value = "学籍信息导入中……";if (percentage.value == 100) {importText.value = "学籍导入成功!"}
};const getFile = (val:any) => {const formData = new FormData();formData.append('file', val.file)axios({method: 'post',data:formData,url: `${app.api}/student/student/import`,headers: {"Content-Type": "application/json;charset=UTF-8","token":token},onUploadProgress: (progressEvent) => {let num = progressEvent.loaded / progressEvent.total * 100 | 0;val.onProgress({percent: num})},//此处由于后端返回的是一个流的形式,所以请求必须带 responseType: 'blob',意思是后端返回的是一个流的形式,如果不带,那么后端返回的流,你下载的文件就会无法打开responseType: 'blob'}).then((res:any) => {if (res.code){}else {downloadUrl.value = window.URL.createObjectURL(new Blob([res.data]))}})
}</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/27281.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

投个 3D 冰壶,上班玩一玩 | 物理引擎

本篇文章将介绍如何使用物理引擎和图扑 3D 可视化技术来呈现冰壶运动的模拟。 Oimo.js 物理引擎 Oimo.js 是一个轻量级的物理引擎&#xff0c;它使用 JavaScript 语言编写&#xff0c;并且基于 OimoPhysics 引擎进行了改进和优化。Oimo.js 核心库只有 150K &#xff0c;专门用…

【原创】实现GPT中Transformer模型之框架概念

作者&#xff1a;黑夜路人 时间&#xff1a;2023年7月 GPT是什么意思 GPT的全称是 Generative Pre-trained Transformer&#xff08;生成型预训练变换模型&#xff09;&#xff0c;它是基于大量语料数据上训练&#xff0c;以生成类似于人类自然语言的文本。其名称中的“预训练”…

linux远程服务器和本地服务器相互之间传输文件方法SSH(乌班图系统)

提前知道几点&#xff1a; 1.使用的MobaXterm软件 2.访问本地、远程服务器&#xff0c;需要账号和密码&#xff08;远程机器上的用户名和密码 远程机器的 IP 地址或主机名&#xff08;在同一子网上&#xff09;&#xff09;。每次访问需要输入密码&#xff0c;可以搜Ubuntu SS…

8、gateway使用和原理

一、什么是Spring Cloud Gateway 1、网关简介 网关作为流量的入口&#xff0c;常用的功能包括路由转发&#xff0c;权限校验&#xff0c;限流等。 2、Gateway简介 Spring Cloud Gateway 是Spring Cloud官方推出的第二代网关框架&#xff0c;定位于取代 Netflix Zuul。相比 …

QT禁用窗口【关闭】按钮的实现方法

QT禁用窗口关闭按钮的实现方法&#xff0c;直接在窗体类构造函数的内部写入setWindowFlags(Qt::CustomizeWindowHint | Qt::WindowMinimizeButtonHint | Qt::WindowMaximizeButtonHint)即可实现&#xff0c;案例如下&#xff1a; #include "form.h" #include "…

Nginx Linux设置开机自启动

使用如下命令 vi /lib/systemd/system/nginx.service 创建并编辑文件将以下代码黏贴至此文件中 [Unit] Descriptionnginx Afternetwork.target[Service] Typeforking TimeoutSec0 #防止启动超时 Userroot Grouproot criptionnacos Afternetwork.target[Service] Typeforking T…

Visual Studio 自定义的颜色字体不生效

问题描述&#xff1a; 1、dll1中引用第三方库的类不识别&#xff0c;颜色黑白&#xff0c;自定义颜色不生效&#xff1b;定义的是结构体 2、在dll2引用另一个dll1中的结构体。结构体不识别&#xff0c;今天成员函数cpp中自定义颜色不生效。 问题解决方式&#xff1a; 全部清…

业务变革与架构双驱动的多项目管理︱海康威视流程变革咨询顾问张燕飞

海康威视数字技术股份有限公司流程与变革管理部流程变革咨询顾问张燕飞女士受邀为由PMO评论主办的2023第十二届中国PMO大会演讲嘉宾&#xff0c;演讲议题&#xff1a;业务变革与架构双驱动的多项目管理。大会将于8月12-13日在北京举办&#xff0c;敬请关注&#xff01; 议题简要…

[Volo.Abp升级笔记]使用旧版Api规则替换RESTful Api以兼容老程序

Volo.Abp 配置应用层自动生成Controller&#xff0c;增删查改服务&#xff08;CrudAppService&#xff09;将会以RESTful Api的方式生成对应的接口 (官方文档)&#xff0c;这与旧版本的Abp区别很大。RESTful固然好&#xff0c;虽然项目里新的Api会逐步使用RESTful Api代替旧的&…

STM32单片机OLED智能饮水机童锁自动出水补水加热水位检测

实践制作DIY- GC0159--OLED智能饮水机 基于STM32单片机设计---OLED智能饮水机 二、功能介绍&#xff1a; 电路组成&#xff1a;STM32F103CXT6最小系统 OLED显示器DS18B20检测水温1个继电器模拟加热1个继电器模拟补水1个继电器模拟出水水位传感器超声波测距多个按键&#xff08…

81. 正则表达式

一、概述二、匹配单个字符三、匹配一组字符四、使用元字符五、重复匹配六、位置匹配七、使用子表达式八、回溯引用九、前后查找十、嵌入条件参考资料 一、概述 正则表达式用于文本内容的查找和替换。 正则表达式内置于其它语言或者软件产品中&#xff0c;它本身不是一种语言或…

【docker】部署svn服务器,docker安装部署svn服务器

话不多说直接上步骤&#xff01; 1.下载镜像&#xff0c;创建容器 # 下载镜像 docker pull elleflorio/svn-server # 创建svn仓库目录&#xff0c;进入svn仓库目录 mkdir -p /var/svn # 创建svn服务容器&#xff0c;把容器中的svn仓库映射到本机&#xff0c;并映射3690端口 d…