当前位置: 首页 > news >正文

Vue 实现通过URL浏览器本地下载 PDF 和 图片

1、代码实现如下:

根据自己场景判断 PDF 和 图片,下载功能可按下面代码逻辑执行

const downloadFile = async (item: any) => {try {let blobUrl: any;// PDF本地下载if (item.format === 'pdf') {const response = await fetch(item.url); // URL传递进入if (!response.ok) {throw new Error('本地下载失败!');}const blob = await response.blob();blobUrl = URL.createObjectURL(blob); } else { // 图片下载const imageUrl = item.url;const response = await fetch(imageUrl); // URL传递进入if (!response.ok) {throw new Error(`本地下载失败!`);}const blob = await response.blob();blobUrl = URL.createObjectURL(blob);}//执行下载逻辑if (blobUrl) {const link = document.createElement("a"); // 创建a标签link.href = blobUrl; // 下载链接link.download = item.name; // 下载的文件名document.body.appendChild(link);link.click();document.body.removeChild(link); // 下载完成后移除a标签URL.revokeObjectURL(blobUrl); // 释放URL对象}} catch {proxy.$message.error('本地下载失败!');}
};

2、浏览器效果:

http://www.lryc.cn/news/539810.html

相关文章:

  • 【2025最新计算机毕业设计】基于SpringBoot+Vue非遗传承与保护研究系统【提供源码+答辩PPT+文档+项目部署】
  • 组合总和力扣--39
  • echarts tooltip高亮某个值,某一项选中高亮状态
  • Vue 3:基于按钮切换动态图片展示(附Demo)
  • 【Java】泛型与集合篇 —— 泛型
  • 【JAVA:list中再定义一个list对象,循环赋值不同的list数据,出现追加重复数据问题】
  • 为什么外贸办公需要跨境专线网络?
  • 帆软报表FineReport入门:简单报表制作[扩展|左父格|上父格]
  • Nginx 在Linux中安装、使用
  • 在Vue项目中使用three.js在前端页面展示PLY文件或STL文件
  • DeepSeek笔记(二):DeepSeek局域网访问
  • 【LeetCode Hot100 矩阵】矩阵置零、螺旋矩阵、旋转图像、搜索二维矩阵II
  • 【设计模式】【创建型模式】建造者模式(Builder)
  • 如何利用国内镜像从huggingface上下载项目
  • pandas常用操作
  • linux使用
  • 基于豆瓣2025电影数据可视化分析系统的设计与实现
  • 基于Python的深度学习音乐推荐系统(有配套论文)
  • 远程计算机无conda情况下配置python虚拟环境
  • 强化学习-价值学习算法
  • Golang深度学习
  • 基于推荐算法的在线课程推荐系统设计与实现
  • es和kibana安装
  • 本地部署Anything LLM+Ollama+DeepSeek R1打造AI智能知识库教程
  • zyNo.25
  • Spring框架基本使用(Maven详解)
  • 关于前后端分离跨域问题——使用DeepSeek分析查错
  • 三层渗透测试-DMZ区域 二三层设备区域
  • 领航Linux UDP:构建高效网络新纪元
  • 基于MATLAB的均匀面阵MUSIC算法DOA估计仿真