【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);
相关推荐
gnip1 小时前
企业级配置式表单组件封装
前端·javascript·vue.js
掘金安东尼4 小时前
抛弃自定义模态框:原生Dialog的实力
前端·javascript·github
hj5914_前端新手7 小时前
javascript基础- 函数中 this 指向、call、apply、bind
前端·javascript
Hilaku8 小时前
都2025年了,我们还有必要为了兼容性,去写那么多polyfill吗?
前端·javascript·css
LuckySusu8 小时前
【js篇】JavaScript 原型修改 vs 重写:深入理解 constructor的指向问题
前端·javascript
LuckySusu8 小时前
【js篇】如何准确获取对象自身的属性?hasOwnProperty深度解析
前端·javascript
LuckySusu8 小时前
【js篇】深入理解 JavaScript 作用域与作用域链
前端·javascript
LuckySusu8 小时前
【js篇】call() 与 apply()深度对比
前端·javascript
LuckySusu8 小时前
【js篇】addEventListener()方法的参数和使用
前端·javascript
LuckySusu8 小时前
【js篇】深入理解 JavaScript 原型与原型链
前端·javascript