uniapp使用H5实现预览pdf文件

下载后把压缩包解压到自己的项目的static文件夹下的pdf文件下,如图

新建一个文件名为filePreview.vue

复制代码
<template>
	<view>
		<web-view :src="allUrl"></web-view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				viewerUrl:'../../static/pdf/web/viewer.html',
				allUrl: '.'
			}
		},
		onLoad(options) {
			this.allUrl = `${this.viewerUrl}?file=${options.url}`;
			// this.allUrl = this.viewerUrl + '?file=' + options.url
		}
	}
</script>

在下载文件事件

复制代码
<view @click="getContractPdf">下载文件</view>

			getContractPdf() {
				exportContractPdf({
					id: this.id
				}).then(res => {
					this.url = res.data
					uni.navigateTo({
						url: '/pages/index/filePreview?url=' + this.url
					})
				})
			},

1.如果预览文件是乱码情况或者在pc上报ocale.properties的请求返回404

解决:就是pdfjs下载版本有问题,下载以前的老版本

2.如果出现跨域问题直接修改源代码在viewer.js中,也可以全局搜素file origin does not match viewer,注释该代码块

解决如下:

相关推荐
用户57573033462424 分钟前
🔥 前端必考!AJAX 数据请求全解析,async true/false 区别一次搞懂
javascript
烤麻辣烫1 小时前
正则表达式快速掌握
前端·javascript·学习·正则表达式·html
心之语歌2 小时前
flutter 父子组件互相调用方法,值更新
前端·javascript·flutter
肖。35487870942 小时前
html中onclick误区,后续变量会更改怎么办?
android·java·javascript·css·html
Lee川2 小时前
从字符串操作到数组映射:一次JavaScript数据处理的深度探索
javascript
随逸1773 小时前
《React 性能优化:useMemo 与 useCallback 实战》
javascript·react.js
HelloReader3 小时前
Tauri 用“系统 WebView + 原生能力”构建更小更快的跨平台应用
前端·javascript·后端
滕青山3 小时前
JSON转TypeScript接口核心JS实现
前端·javascript·vue.js
Xin_z_3 小时前
Vue3 + Element Plus el-tree 节点点击选中问题修复总结
前端·javascript·vue.js
linux_cfan3 小时前
从“线性观看”到“语义检索”:企业级视频知识库播放器选型指南 (2026版)
javascript·学习·音视频·html5