js实现pdf、excel文件无预览直接下载

javascript 复制代码
          // pdf、xlsx或其他文件无预览下载
          const url = '你的文件url链接'
          let fileName = url.substring(url.lastIndexOf('/') + 1)
          console.log("fileName--",fileName)
          let isPdf = url.endsWith('.pdf')
          const request = new XMLHttpRequest();
          request.responseType = 'blob';
          request.open('GET', res.data.url);
          request.onload = function () {
            const link = document.createElement('a');
            document.body.appendChild(link);
            this.response.arrayBuffer().then(buf => {
              const blob = new Blob([buf]);
              const url = URL.createObjectURL(blob);
              link.style.display = 'none';
              link.target = '_blank';
              link.download = fileName;
              link.href = url;
              link.click();
              document.body.removeChild(link);
              window.URL.revokeObjectURL(url);
            });
          };
          request.send();
相关推荐
我叫张小白。7 分钟前
Vue3 基本生命周期:组件的一生之旅
前端·javascript·vue.js·前端框架·vue3
QH_ShareHub15 分钟前
R 包中的生命周期触发函数全解析
前端·javascript·数据库
AI3D_WebEngineer20 分钟前
企业级业务平台项目设计、架构、业务全解之平台篇
前端·javascript·vue
汤姆Tom38 分钟前
前端转战后端:JavaScript 与 Java 对照学习指南 (第二篇 - 基本数据类型对比)
java·javascript·全栈
星空的资源小屋39 分钟前
Explorer++:更强大的Windows文件管理器
javascript·人工智能·django·电脑
米花丶40 分钟前
解决前端监控上报 Script Error实践
前端·javascript
深色風信子1 小时前
Vue 富文本编辑器
前端·javascript·vue.js·wangeditor·vue 富文本·wangeditor-text·前端富文本
网络点点滴1 小时前
Vue3路由query参数
前端·javascript·vue.js
dubochao_xinxi1 小时前
fastapi 接收10g 以上的文件 pandas 读取超过 10GB 的 Excel 文件
excel·pandas·fastapi
我叫张小白。2 小时前
Vue3 Hooks:逻辑复用的解决方案
前端·javascript·vue.js·前端框架·vue