vue下载excel表格

下载excel表格

先从后端获取文件流,获取数据为blob格式,然后创建a窗口,命名要下载的文件,最后移除a标签

代码如下:

javascript 复制代码
downLoad() {
   let params = {
        model_name: "a"
      }
   this.$axios
      .get(`url`, { responseType: "blob", params})
      .then((res) => {
          console.log(res.data)
          const link = document.createElement("a");
          let blob = new Blob([res.data], {
            type: "application/xlsx,charset=utf-8",
          });
          link.style.display = "none";
          link.href = URL.createObjectURL(blob);
          // 默认下载时的名称及后缀
          link.download = 'xxx' + ".xlsx";
          document.body.appendChild(link);
          //模拟点击事件
          link.click();
          //移除创建的a标签
          window.URL.revokeObjectURL(link.href);
          document.body.removeChild(link);
        });
}
相关推荐
前端那点事5 分钟前
深度解析:Vue中computed的实现原理(易懂不晦涩)
前端·vue.js
前端那点事8 分钟前
Vue中深克隆的3种实现方案(附详细注释+测试)
前端·vue.js
❆VE❆22 分钟前
基于 contenteditable 实现变量插入富文本编辑器
前端·javascript·vue.js
烤麻辣烫28 分钟前
json与fastjson
前端·javascript·学习·json
小陈同学呦35 分钟前
JavaScript 深浅拷贝详解
前端·javascript
小陈同学呦41 分钟前
fetch和axios区别
前端·javascript
森叶1 小时前
Electron 实战:用 utilityProcess 开子进程,去端口化承载协议处理,并由主进程拦截渲染请求后统一中转
前端·javascript·electron
开开心心就好2 小时前
一款既是直播工具又是浏览器的软件
linux·运维·服务器·智能手机·逻辑回归·excel·最小二乘法
Hilaku2 小时前
做了 6 年前端,技术不差却拿不到 Offer?
前端·javascript·程序员
a1117763 小时前
RIPPLE 流体交互(html 开源)
前端·javascript·html