IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> vue3导出excel -> 正文阅读

[JavaScript知识库]vue3导出excel

const mimeMap = {
      xlsx: 'application/vnd.ms-excel',
      zip: 'application/zip'
    };
    const resolveBlob = (res: any, mimeType: any) => {
      // 创建a标签,并处理二级制数据
      const aLink = document.createElement('a');
      const blob = new Blob([res.data], { type: mimeType });

      // 设置下载文件名称,使用正则取出名称
      const pat = new RegExp('filename=([^;]+\\.[^\\.;]+)');
      let contentDisposition = '';
      //浏览器问题可能会出现 content-disposition 匹配不到
      if (res.headers['content-disposition']) contentDisposition = res.headers['content-disposition'];
      if (res.headers['Content-Disposition']) contentDisposition = res.headers['Content-Disposition'];
      console.log(contentDisposition, 'contentDisposition');
      const result = pat.exec(contentDisposition);
      console.log(result);
      let fileName = result && result[1];
      console.log(fileName);
      // 如果Content-Disposition没有暴露,给文件一个默认名字
      if (fileName == null) fileName = '商品规格描述.xlsx';

      // 生成下载链接
      const URL = window.URL || window.webkitURL;
      aLink.href = URL.createObjectURL(blob);
      aLink.setAttribute('download', fileName);
      // 下载
      document.body.appendChild(aLink);
      aLink.click();
      // 释放URL对象
      window.URL.revokeObjectURL(aLink.href);
      document.body.removeChild(aLink);
    };
    const getExportXlsx = (page: number | string, limit: number) => {
      $axios
        .get($api.exportXlsx, {
          params: { page: page, limit: limit },
          responseType: 'blob'
        })
        .then((res: any) => {
          console.log(res, '导出文件打印res');
          if (res.status === 200) {
            resolveBlob(res, mimeMap);
          } else {
            $message.warn('下载文件失败!');
          }
        });
    };

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章           查看所有文章
加:2022-05-13 11:40:51  更:2022-05-13 11:42:55 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 19:44:28-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码