Vue中使用a标签下载静态资源文件(比如excel、pdf等),纯前端操作

第一步,public文件夹下新建static文件夹存放静态资源

我存放了一个 .docx文件,当然,你可以存放pdf/word 等文件都可以。

第二步,模拟a标签下载

复制代码
//html部分

<el-button type="primary" plain @click="download">本地下载</el-button>

//js部分

// 授权书下载
download() {
   // 通过a标签来实现下载
   var a = document.createElement("a") //创建一个<a></a>标签
    a.href = "/static/签约授权书.docx" //给a标签的href属性值加上地址,注意,这里是绝对路径,不用    加 点.
    a.download = "签约授权书.docx" //设置下载文件文件名,这里加上.docx指定文件类型,pdf文件就指定.pdf即可
    a.style.display = "none" //隐藏a标签
    document.body.append("a") //将a标签追加到document.body中
    a.click() //模拟点击a标签,会触发a标签的href的读取,浏览器就会自动下载了
    a.remove() // 删除a标签(一次性的)
}
相关推荐
Senar2 小时前
如何判断浏览器是否开启硬件加速
前端·javascript·数据可视化
HtwHUAT3 小时前
实验四 Java图形界面与事件处理
开发语言·前端·python
利刃之灵3 小时前
01-初识前端
前端
codingandsleeping3 小时前
一个简易版无缝轮播图的实现思路
前端·javascript·css
天天扭码3 小时前
一分钟解决 | 高频面试算法题——最大子数组之和
前端·算法·面试
全宝3 小时前
🌏【cesium系列】01.vue3+vite集成Cesium
前端·gis·cesium
路有瑶台4 小时前
EXCEL学习
学习·excel
拉不动的猪4 小时前
简单回顾下插槽透传
前端·javascript·面试
烛阴4 小时前
Fragment Shader--一行代码让屏幕瞬间变黄
前端·webgl
爱吃鱼的锅包肉4 小时前
Flutter路由模块化管理方案
前端·javascript·flutter