vue实现当前页文件下载及重命名文件名

原理:创建a标签,添加事件
代码如下

handleDownload() {
   let checkList = [{ResourcesUrl:'http://localhost:8080/download/a.docx',ResourcesName:'a.docx'},{ResourcesUrl:'http://localhost:8080/download/b.docx',ResourcesName:'b.docx'}]
   checkList && checkList.length && checkList.forEach(item => {
     if (this.isIE()) { // IE
       window.open(item.ResourcesUrl, '_blank')
     } else {
       let a = document.createElement('a') // 创建a标签
       let e = document.createEvent('MouseEvents') // 创建鼠标事件对象
       e.initEvent('click', false, false) // 初始化事件对象
       a.href = this.baseUrl + item.ResourcesUrl // 设置下载地址
       a.download = item.ResourcesName // 设置下载文件名 此处可以修改为自己想要的下载文件名
       a.dispatchEvent(e)
     }
   })
 },
 isIE() {
  if (!!window.ActiveXObject || 'ActiveXObject' in window) {
     return true
   } else {
     return false
   }
 }
Logo

前往低代码交流专区

更多推荐