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

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

一、使用插件

插件名称: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(); // 将文件流转换为 Blob
      url.value = URL.createObjectURL(blob); // 将 Blob 转换为 URL
        console.log('url:',url.value,blob);
      })



http://www.kler.cn/a/517438.html

相关文章:

  • SpringBoot3+Vue3开发学生选课管理系统
  • 侧边导航(Semi Design)
  • 软件测试压力太大了怎么办?
  • BGP分解实验·11——路由聚合与条件性通告(3)
  • Linux内核中IPoIB驱动模块的初始化与实现
  • linux naive代理设置
  • 【竞技宝】DOTA2:NAVI junior被ESL取消参赛资格
  • springfox-swagger-ui 3.0.0 配置
  • 无监督学习:聚类、异常检测
  • C++AVL树(二)详解
  • 港科夜闻 | 香港科大获三千万基金资助,开发人工智能英语评估及学习系统,供全港中学生免费使用...
  • PostgreSQL中级专家是什么意思?
  • AI问答:在后端开发语境中 VO 是什么 / Value Object / 值对象
  • 第12章 volatile关键字的介绍(Java高并发编程详解:多线程与系统设计)
  • Lua语言的图形用户界面
  • Vue3 插槽(Slots)用法总结
  • 一组开源、免费、Metro风格的 WPF UI 控件库
  • DBeaver下载安装及数据库连接(MySQL)
  • 初步理解数据结构
  • 每日一题 419. 棋盘上的战舰
  • GESP2024年6月认证C++六级( 第三部分编程题(2)二叉树)
  • react native i18n插值:跨组件trans
  • 麒麟操作系统基础知识保姆级教程(二十一)进入单用户模式
  • UE5 特效
  • 面试-二维数组
  • Oracle 创建用户和表空间