当前位置: 首页 > news >正文

el-upload组件,上传文件失败,:on-error方法失效

el-upload组件方法失效

  • 问题
  • 原因
  • 解决

问题

使用el-upload组件上传文件,有这么一个问题上传文件处理报错Excel、Word。org.apache.poi.openxml4j.exceptions.OLE2NotOfficeXmlFileException。

按上述,后端编写完代码,输出正常,但是预期在后端抛出错时前端能够有提示。

就希望能够在前端发起“提交/确定”的方法里面有一个catch怎么的,可以在方法抛出异常/报错时能够给到一个地方写代码,但是项目使用的el-upload默认提交,没有一个类似.catch(() => {})暴露出来可以处理的方法。

好在el-upload官方有一些方法如下:
在这里插入图片描述
但是我在:on-error="handleUploadError"方法中写了处理还是没有生效(后端抛异常,前端给提示)。
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/651bb8fd11b744ca80296be4d09cfec8.png在这里插入图片描述

原因

项目后端对响应封装处理,http响应码是200,手动将抛异常的响应code置500,作为response返回。
这个时候前端不知道你是抛出异常返回的,而是认为请求时被成功处理的,故在组件el-upload识别不到是上传出错,:on-error的方法也不能执行。

解决

在el-upload中其他的方法手动判断,比如在:on-success="handleFileSuccess"中进行手动判断

if (response.code !== 200) {
this.$message.error(response.msg || '上传失败');
}

注意:
1.项目对于异常/报错等返回消息的code是什么
2.是否属于上述情况在于,浏览器F12检查,这个方法是否http是200,自己手动检查其response中的响应码是否属于200

http://www.xdnf.cn/news/967033.html

相关文章:

  • 人工智能与大数据融合发展:新一代智能系统的演进路径
  • 计算机行业光辉开始暗淡
  • Unity3D中Gfx.WaitForPresent优化方案
  • 性能监控的核心要点
  • RestClient
  • AI书签管理工具开发全记录(二十):打包(完结篇)
  • 零基础学前端-传统前端开发(第一期-开发软件介绍与本系列目标)(VScode安装教程)
  • 群晖Nas - Docker(ContainerManager)上安装GitLab
  • Linux内核 -- INIT_WORK 使用与注意事项
  • Windows 文件路径与文件名限制
  • 如何根据excel表生成sql的insert脚本
  • ABP vNext + Hive 集成:多租户大数据 SQL 查询与报表分析
  • 【iOS】cell的复用以及自定义cell
  • 使用NNI剪枝工具对VGG16网络进行剪枝,同时使用知识蒸馏对剪枝后结果进行优化。(以猫狗二分类为例)
  • 认证与授权的区别与联系
  • 看板任务描述不清如何解决
  • 数据库学习笔记(十五)--变量与定义条件与处理程序
  • 云蝠智能大模型语音智能体:构建心理咨询领域的智能助手
  • leetcode1034. 边界着色-medium
  • 使用mpu6500, PID,互补滤波实现一个简单的飞行自稳控制系统
  • 南昌市新建区委书记陈奕蒙会见深兰科技集团董事长陈海波一行
  • 如何使用 DeepSeek 帮助自己的工作
  • 机械制造系统中 PROFINET 与 PROFIBUS-DP 的融合应用及捷米科技解决方案
  • Matlab点云合并函数pcmerge全解析
  • 线程与协程
  • Prometheus + Grafana 监控 RabbitMQ 实践指南
  • Spring Boot 分层架构与数据流转详解
  • Word中如何对文献应用的格式数字连起来,如:【1-3】
  • 如何看容器的ip地址
  • 每日收获总结20250610