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);
        });
}
相关推荐
开发者小天1 小时前
调整为 dart-sass 支持的语法,将深度选择器/deep/调整为::v-deep
开发语言·前端·javascript·vue.js·uni-app·sass·1024程序员节
学习笔记1015 小时前
第十五章认识Ajax(六)
前端·javascript·ajax
程序员杨工6 小时前
【原创】SpringBoot3+Vue3客户管理系统
vue.js·springboot
theOtherSky8 小时前
element+vue3 table上下左右键切换input和select
javascript·vue.js·elementui·1024程序员节
会联营的陆逊8 小时前
JavaScript 如何优雅的实现一个时间处理插件
javascript
over6978 小时前
浏览器里的AI魔法:用JavaScript玩转自然语言处理
前端·javascript
Amy_cx8 小时前
搭建React Native开发环境
javascript·react native·react.js
代码AI弗森8 小时前
Python × NumPy」 vs 「JavaScript × TensorFlow.js」生态全景图
javascript·python·numpy
疏狂难除9 小时前
关于spiderdemo第二题的奇思妙想
javascript·爬虫