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);
        });
}
相关推荐
走粥19 分钟前
选项式API与组合式API的区别
开发语言·前端·javascript·vue.js·前端框架
晚霞的不甘34 分钟前
解决 Flutter for OpenHarmony 构建失败:HVigor ERROR 00303168 (SDK component missing)
android·javascript·flutter
2501_944521591 小时前
Flutter for OpenHarmony 微动漫App实战:分享功能实现
android·开发语言·javascript·flutter·ecmascript
小小码农Come on1 小时前
QPushButton QSS(一):按钮常用qss
前端·javascript·css·qt5
Booksort1 小时前
React+js环境配置(极速版)
前端·javascript·react.js
幻云20102 小时前
Next.js 之道:从入门到精通
前端·javascript·vue.js·人工智能·python
2501_944521592 小时前
Flutter for OpenHarmony 微动漫App实战:标签筛选功能实现
android·开发语言·前端·javascript·flutter
多仔ヾ2 小时前
Vue.js 前端开发实战之 05-Vue 过渡和动画
vue.js
⑩-2 小时前
VUE3学习
前端·javascript·vue.js
Mr Xu_2 小时前
Vue 3 中使用 mitt 实现组件间通信的实践与解析
前端·javascript·vue.js