PC端实现PDF预览(支持后端返回文件流 || 返回文件URL)

server/2025/1/30 23:40:54/

一、使用插件

插件名称:vue-office/pdf
版本:2.0.2
安装插件:npm i @vue-office/pdf@^2.0.2
1、“@vue-office/pdf”: “^2.0.2”,
2、 npm i @vue-office/pdf@^2.0.2

二、代码实现

// 引入组件 (在需要使用的页面中直接引入)
import VueOfficePdf from '@vue-office/pdf'// 在页面中引用
<vue-office-pdf src="https://xxxxxx.net/view-pdf?path=20250120123710-19c66fa910634be9.pdf" style="height: 580px" />// 一 、如果后端返回的是文件url直接把文件url放在组件的src上就可以展示// 二、如果后端返回的是文件流 、需要前端将文件流转成url,在放在组件的src上才可以展示 
// 1、文件流如何转成 url? 代码如下getBlob({path:"20250120123710-19c66fa910634be9.pdf"}).then((res:any)=>{}).finally(async ()=>{// 'https://xxxxxx.net/view-pdf?path=20250120123710-19c66fa910634be9.pdf') 请求地址const response = await fetch('https://xxxxxx.net/view-pdf?path=20250120123710-19c66fa910634be9.pdf');const blob = await response.blob(); // 将文件流转换为 Bloburl.value = URL.createObjectURL(blob); // 将 Blob 转换为 URLconsole.log('url:',url.value,blob);})

http://www.ppmy.cn/server/163015.html

相关文章

Web3 与数据隐私:如何让用户掌控个人信息

随着数字化时代的快速发展&#xff0c;互联网已经渗透到我们生活的方方面面&#xff0c;个人数据的收集与使用也变得越来越普遍。与此同时&#xff0c;数据隐私问题逐渐成为全球关注的焦点。传统的互联网平台通常将用户的数据存储在中心化的服务器上&#xff0c;这意味着平台拥…

Android 自定义View时四个构造函数使用详解

该文章我们以自定义View继承TextView为例来讲解 创建自定义View命名MyTextView&#xff0c;并使其继承TextView 1、自定义View时第一个构造函数 // 第一个构造函数主要是在Java代码中声明一个MyTextView时所用 // 类似这种(MyTextView myTextViewnew MyTextView(this);) // 不…

MyBatis-Plus之常用注解

一、TableName 经过一系列的测试&#xff0c;在使用MyBatis-Plus实现基本的CRUD时&#xff0c;我们并没有指定要操作的表&#xff0c;只是在 Mapper接口继承BaseMapper时&#xff0c;设置了泛型User&#xff0c;而操作的表为user表 由此得出结论&#xff0c; MyBatis-Plus在确…

win11系统,Java web程序连不上数据的的解决办法

买了台新笔记本电脑&#xff0c;把代码和数据考了过来&#xff0c;想着能愉快的写代码了&#xff0c;程序起来发现连不上数据库。 所有的配置翻了一遍&#xff0c;也没发现问题&#xff0c;遂怀疑是系统的问题&#xff0c;原电脑是win10,现电脑是win11&#xff0c;所以晚上冲浪…

人工智能学习框架:深入解析与实战指南

&#x1f4dd;个人主页&#x1f339;&#xff1a;一ge科研小菜鸡-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 引言 随着人工智能&#xff08;AI&#xff09;技术的飞速发展&#xff0c;深度学习、强化学习和自然语言处理等领域的应用愈加广…

DeepSeek-R1:强化学习驱动的推理模型

1月20日晚&#xff0c;DeepSeek正式发布了全新的推理模型DeepSeek-R1&#xff0c;引起了人工智能领域的广泛关注。该模型在数学、代码生成等高复杂度任务上表现出色&#xff0c;性能对标OpenAI的o1正式版。同时&#xff0c;DeepSeek宣布将DeepSeek-R1以及相关技术报告全面开源。…

C++标准线程库实现优雅退出的方式

目录 1.通过设置共享退出标记 2.使用std::jthread创建线程 3.定义消息类型的方式 4.注意事项 1.通过设置共享退出标记 定义一个退出变量bool stop false; 表示线程是否应该停止。在主线程中设置标记stoptrue,然后join一直等待&#xff0c;然后线程循环检测到stop是否为tru…

【10.2】队列-设计循环队列

一、题目 设计你的循环队列实现。 循环队列是一种线性数据结构&#xff0c;其操作表现基于 FIFO&#xff08;先进先出&#xff09;原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。 循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普…