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

前端下载的EXCEL文件无法打开的解决办法

前端下载的EXCEL文件无法打开的解决办法

根据工作需要,要下载一个excel文件模板,但下载的文件报错,打不开,如下:
在这里插入图片描述
检查了下载的代码,均没问题,出现这个问题的主要原因原来是需要在接口中加一个responseType,类型要为blob,这个非常重要,必须要,因为我这儿是封装好的接口,所以我直接在这里加上这句就可以,代码如下:

在这里插入图片描述
下载方法封装:

 //普通下载/*** @description 接收数据流生成 blob,创建链接,下载文件* @param {Function} api 导出表格的接口 (必传)*  @param {Object} params 导出的参数 (默认{})* @param {String} filename 导出的文件名 (必传)* @param {Boolean} isNotify 是否有导出消息提示 (默认为 true)* @param {String} fileType 导出的文件格式 (默认为.xlsx)* */const downloadFile = async (api,filename,fileType: string = '.xlsx',params: any = {},isNotify: boolean = false,) => {if (isNotify) {ElNotification({title: '温馨提示',message: '如果数据庞大会导致下载缓慢哦,请您耐心等待!',type: 'info',duration: 3000,});}const res = await api(params);const blob = new Blob([res]);saveAs(blob, filename, fileType);};const saveAs = (blob, filename, fileType) => {const link = document.createElement('a');const body = document.querySelector('body');link.href = window.URL.createObjectURL(blob);link.download = fileType ? `${filename}${fileType}` : `${filename}`;link.style.display = 'none';body.appendChild(link);link.click();body.removeChild(link);window.URL.revokeObjectURL(link.href);};
http://www.dtcms.com/a/307417.html

相关文章:

  • 9.Linux 调优与性能检测
  • 前端框架Vue3(四)——组件通信及其他API
  • 前端开发(HTML,CSS,VUE,JS)从入门到精通!第一天(HTML5)
  • Java WEB技术-序列化和反序列化认识(SpringBoot的Jackson序列化行为?如何打破序列化过程的驼峰规则?如何解决学序列化循环引用问题?)
  • Amazon RDS for MySQL成本优化:RDS缓存降本实战
  • 三坐标测量机路径规划与补偿技术:如何用算法看见微米级误差?
  • 抖音集团基于Paimon的流式数据湖应用实践
  • 常见的中间件漏洞如tomcat,weblogic,jboss,apache靶场攻略
  • wpf之ContentPresenter
  • 《Java 程序设计》第 14 章 - JavaFX 基础
  • windows服务器 maven 配置环境变量,验证maven环境变量是否配置成功
  • AI在法律合同内容比对的应用实例
  • 使用 Elasticsearch 和 AI 构建智能重复项检测
  • 接口基础-智能家居控制系统
  • 家政小程序系统开发:满足多元家政需求
  • AI 类型的 IDE
  • 直播小程序 app 系统架构分析
  • FastMCP本地构建Server和Clinet交互
  • PyTorch深度学习快速入门学习总结(三)
  • selenium+pyautogui实现页面鼠标自动化控制
  • 学习Python中Selenium模块的基本用法(4:WebDriver常用属性及函数)
  • RabbitMQ的特点和消息可靠性保障
  • RabbitMQ 队列配置设置 RabbitMQ 消息监听器的并发消费者数量java
  • [Linux入门] Linux防火墙技术入门
  • rabbitmq的安装和使用-windows版本
  • 远程仓库地址发生变化
  • RabbitMQ安装与介绍
  • 推客小程序商业模型设计:合规分佣体系×盈利模式×LTV提升策略
  • Cesium 快速入门(七)材质详解
  • 一键打包所有docker镜像的脚本