一般下载文件或视频图片等,都是后端提供接口,前端在做额外的处理,今天碰到一个文件都放到前端,不与后端做交互,那么你就需要把固定的文件放到public文件下面创建一个文件夹,如下:
这个名字自己随意取
创建downloadFile.js
export const downloadFile = (file, fileName) => {
let a = document.createElement('a'); //创建一个<a></a>标签
a.href = file; // 给a标签的href属性值加上地址,注意,这里是绝对路径,不用加 点.
a.download = fileName; //设置下载文件文件名,这里加上.xlsx指定文件类型,pdf文件就指定.fpd即可
a.style.display = 'none'; // 障眼法藏起来a标签
document.body.appendChild(a); // 将a标签追加到文档对象中
a.click(); // 模拟点击了a标签,会触发a标签的href的读取,浏览器就会自动下载了
a.remove(); // 一次性的,用完就删除a标签
}
调用该方法
downloadFile('/static/2023年申报模板.rar', '2023年申报模板.rar');