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

ant design 中,使用dva/fetch 设置导致无法从后台导出excel的问题

最近使用antd 做一个后台管理系统中,业务场景下需要将数据导出为excel,后端使用POI,结果数据怎么都无法生成,后面发现原来是前端限制了header 中可以接受的数据类型为json,无法接受blob的类型,后来改用了axios,就可以顺利导出了,下面是导出的代码

 

 1 import axios from 'axios';
 2 
 3 async function getExcel(url, fileName) {
 4   const token = localStorage.getItem('token');
 5   axios
 6     .get(url, {
 7       responseType: 'blob', // 表明返回服务器返回的数据类型,
 8       headers: {
 9         Authorization: 'Bearer ' + token,
10         Accept: 'application/json',
11       },
12     })
13     .then(res => {
14       const content = res;
15       const blob = new Blob([content.data], {
16         type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8',
17       });
18       // return;
19       if ('download' in document.createElement('a')) {
20         // 非IE下载
21         const elink = document.createElement('a');
22         elink.download = fileName;
23         elink.style.display = 'none';
24         elink.target = '_blank';
25         elink.href = URL.createObjectURL(blob);
26         document.body.appendChild(elink);
27         console.log(elink);
28         elink.click();
29         URL.revokeObjectURL(elink.href); // 释放URL 对象
30         document.body.removeChild(elink);
31         // window.location.reload();
32       } else {
33         // IE10+下载
34         navigator.msSaveBlob(blob, fileName);
35         window.location.reload();
36       }
37     });
38 }
39 export default {
40   getExcel,
41 };


 

有不懂得可以加我的qq,773935581,欢迎大家一起学习交流

转载于:https://www.cnblogs.com/zhangsdml/p/9447784.html

相关文章:

  • python引用计数实例_Python中的引用计数法
  • LoadRunner Vuser接口测试脚本 Post举例
  • java 类的继承_Java:类与继承
  • 浅谈对象的复制拷贝
  • java官方网站下载_java下载 7.0 官方版
  • asp.net的% %特定用法
  • java代码shiro注解_java相关:Shiro集成Spring之注解示例详解
  • Oracle Shared Pool机制之——Latches, Locks, Pins and Mutexes
  • java生成apk工具_用Android SDK Build Tools手动构建APK
  • C++常用数据类型
  • java的继承机制有什么好处_JAVA基础-继承机制
  • java类的三种特性_第10章 Java类的三大特性之一:多态
  • 微信公众平台接口测试账号申请
  • java系统类的使用体验_javamelody使用体验
  • 摆花(codevs 1315)
  • 网络传输文件的问题
  • 《用数据讲故事》作者Cole N. Knaflic:消除一切无效的图表
  • 【刷算法】求1+2+3+...+n
  • avalon2.2的VM生成过程
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • C语言笔记(第一章:C语言编程)
  • DOM的那些事
  • Java 内存分配及垃圾回收机制初探
  • React Native移动开发实战-3-实现页面间的数据传递
  • Selenium实战教程系列(二)---元素定位
  • -- 查询加强-- 使用如何where子句进行筛选,% _ like的使用
  • 第十八天-企业应用架构模式-基本模式
  • 电商搜索引擎的架构设计和性能优化
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 二维平面内的碰撞检测【一】
  • - 概述 - 《设计模式(极简c++版)》
  • 搞机器学习要哪些技能
  • 前端之React实战:创建跨平台的项目架构
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 一个普通的 5 年iOS开发者的自我总结,以及5年开发经历和感想!
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • ​2020 年大前端技术趋势解读
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • # 飞书APP集成平台-数字化落地
  • #HarmonyOS:基础语法
  • #include<初见C语言之指针(5)>
  • (33)STM32——485实验笔记
  • (7)STL算法之交换赋值
  • (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作...
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (带教程)商业版SEO关键词按天计费系统:关键词排名优化、代理服务、手机自适应及搭建教程
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (一)插入排序
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • **PHP分步表单提交思路(分页表单提交)
  • .net 4.0发布后不能正常显示图片问题
  • .NET DataGridView数据绑定说明
  • .NET多线程执行函数