js实现前端下载图片和文件资料

说明:下载图片和文档资料是两种不同的方式,所以需要先判断下载的是图片还是word,excel等文件资料

目录

1.文件资料下载:

2.图片资源下载


1.文件资料下载:

复制代码
window.location.href = '文件路径';

handleClick(item) {
  let fileSrc = `../../../data/${item.filepath}/${item.xzfilename}`;
  let filename = item.filename;
  let imgtype = ['png','jpg','jpeg','PNG','JPG','JPEG'];
  if(imgtype.indexOf(item.filename.split('.')[1]) != -1){
    debugger;
    //图片类型下载方式
    this.saveFileImg(fileSrc,filename);
  }else{
    debugger;
    //文档类型
    window.location.href = fileSrc;
  }
},

2.图片资源下载

复制代码
saveFileImg(data,filename){
    var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
    save_link.href = data;
    save_link.download = filename;
    var event = document.createEvent('MouseEvents');
    event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
    save_link.dispatchEvent(event);
},
相关推荐
爱吃奶酪的松鼠丶7 分钟前
React长列表,性能优化。关于循环遍历的时候,key是用对象数据中的ID还是用索引
javascript·react.js·性能优化
Data_agent10 分钟前
Python 编程实战:函数与模块化编程及内置模块探索
开发语言·python
new_zhou10 分钟前
vs2019+qt工程中生成dump文件及调试
开发语言·qt·visual studio·dump调试
xkxnq31 分钟前
第二阶段:Vue 组件化开发(第 17天)
javascript·vue.js·ecmascript
栈与堆35 分钟前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表
豆苗学前端36 分钟前
你所不知道的前端知识,html篇(更新中)
前端·javascript·面试
一路向北·重庆分伦37 分钟前
03-01:MQ常见问题梳理
java·开发语言
一 乐38 分钟前
绿色农产品销售|基于springboot + vue绿色农产品销售系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·宠物
zzjyr38 分钟前
Webpack 生命周期原理深度解析
前端
xiaohe060141 分钟前
💘 霸道女总裁爱上前端开发的我
前端·游戏开发·trae