Vue中 实现静态文件下载(以下载表格为例)

应用场景:有时候我们需要下载的文件数量不多且内容是固定不变的静态文件(如:模板之类),那么实现下载功能在前端就可以完成,不需要和服务端进行交互。如需下载内容较为复杂是动态文件,请移步 传送门:Vue中 实现文件流下载

本文vue-cli 版本:3.x, 4.x

1. 将待下载的文件放在 public 里
public 文件夹下的文件并不会被 Webpack 处理,它们会直接被复制到最终的打包目录下。
必须使用绝对路径引用这些文件,简单说 public 就是用来存放万年不变的文件。
在这里插入图片描述
2. 组件中代码实现

<template>
  <div class="about">
    <el-button type="primary" @click="download">下载</el-button>
  </div>
</template>

<script>
export default {
    
    
  data() {
    
    
    return {
    
    };
  },
  methods: {
    
    
    download(){
    
    
      let a = document.createElement('a');
      a.href = `/static/test.xlsx`;
      a.download = '测试表格.xlsx';
      a.click();
    }
  },
  mounted() {
    
    },
};
</script>

3. dist文件
在这里插入图片描述
最后将 dist 包在服务器部署便可

猜你喜欢

转载自blog.csdn.net/ZYS10000/article/details/112035431
今日推荐