【uniapp/vue/pdf.js】在 uniapp 中使用 pdf.js(可以实现在电脑和手机上预览 pdf 文件)

pdf.js 可以在 uniapp 中使用,可以实现在电脑和手机上预览 pdf 文件,

如果是用 iframe 无法实现在手机上预览,附件传的是比较低版本的 pdf.js 文件(2.2.228),其中跨域报错已处理,因为我试过高版本的(如 4.x)可能会引起手机的兼容性问题,导致在有些型号的手机无法正常显示,低版本的可以正常显示,只是样式有些不同。

兼容性问题可以看另一篇文章:【vue/uniapp】pdf.js 在一些型号的手机上不显示

html 复制代码
<web-view :src="url"></web-view>

需要在 data 中声明的变量,路径基本上是固定的,建议把文件放在 static 目录下:

javascript 复制代码
url: '', // PDF路径
viewerUrl: '/static/pdf/web/viewer.html', // 用来渲染PDF的html

这里的 pdfLink 是在线链接的地址,根据实际情况进行替换

javascript 复制代码
this.url = this.viewerUrl + '?file=' + encodeURIComponent(this.pdfLink);
相关推荐
Qinana18 分钟前
从代码到智能体:MCP 协议如何重塑 AI Agent 的边界
前端·javascript·mcp
洋洋技术笔记33 分钟前
Vue实例与数据绑定
前端·vue.js
Marshall15134 分钟前
zzy-scroll-timer:一个跨框架的滚动定时器插件
前端·javascript
明月_清风2 小时前
打字机效果优化:用 requestAnimationFrame 缓冲高频文字更新
前端·javascript
明月_清风2 小时前
Markdown 预解析:别等全文完了再渲染,如何流式增量渲染代码块和公式?
前端·javascript
牛奶11 小时前
Vue 基础理论 & API 使用
前端·vue.js·面试
牛奶11 小时前
Vue 底层原理 & 新特性
前端·vue.js·面试
pe7er11 小时前
状态提升:前端开发中的状态管理的设计思想
前端·vue.js·react.js
程序猿的程15 小时前
开源一个 React 股票 K 线图组件,传个股票代码就能画图
前端·javascript
不爱说话郭德纲16 小时前
告别漫长的HbuilderX云打包排队!uni-app x 安卓本地打包保姆级教程(附白屏、包体积过大排坑指南)
android·前端·uni-app