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);
        });
}
相关推荐
hj5914_前端新手3 小时前
javascript基础- 函数中 this 指向、call、apply、bind
前端·javascript
Hilaku3 小时前
都2025年了,我们还有必要为了兼容性,去写那么多polyfill吗?
前端·javascript·css
LuckySusu3 小时前
【js篇】JavaScript 原型修改 vs 重写:深入理解 constructor的指向问题
前端·javascript
LuckySusu3 小时前
【js篇】如何准确获取对象自身的属性?hasOwnProperty深度解析
前端·javascript
LuckySusu3 小时前
【js篇】深入理解 JavaScript 作用域与作用域链
前端·javascript
LuckySusu3 小时前
【js篇】call() 与 apply()深度对比
前端·javascript
LuckySusu3 小时前
【js篇】addEventListener()方法的参数和使用
前端·javascript
LuckySusu4 小时前
【js篇】深入理解 JavaScript 原型与原型链
前端·javascript
云枫晖4 小时前
手写Promise-构造函数
前端·javascript
王王碎冰冰4 小时前
基于 Vue3@3.5+跟Ant Design of Vue 的二次封装的 Form跟搜索Table
前端·vue.js