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,注释该代码块

解决如下:

相关推荐
Aotman_9 分钟前
Vue <template v-for> key should be placed on the <template> tag.
前端·javascript·vue.js
摘星编程19 分钟前
在OpenHarmony上用React Native:自定义useTranslation翻译功能
javascript·react native·react.js
A_nanda27 分钟前
vue快速学习框架
前端·javascript·vue.js·学习·c#
蜗牛攻城狮27 分钟前
“直接 URL 下载” vs “前端 Blob 下载”:原理、区别与最佳实践
前端·javascript·二进制流
100分简历30 分钟前
无图标简洁大方的简历模板下载
人工智能·面试·职场和发展·pdf·编辑器
爱上妖精的尾巴33 分钟前
7-16 WPS JS宏 RandBetween、Address实例8--[唯一性]类的应用
开发语言·javascript·wps·js宏·jsa
世洋Blog34 分钟前
H5游戏-Canvas绘制与JS基础
javascript·游戏·h5·canvas
刘一说39 分钟前
Pinia状态持久化的“隐形陷阱“:为什么页面刷新后状态丢失?
前端·javascript·vue.js
摘星编程1 小时前
OpenHarmony环境下React Native:自定义useDarkMode深色模式
javascript·react native·react.js
摘星编程1 小时前
用React Native开发OpenHarmony应用:自定义useNumberFormat数字格式化
javascript·react native·react.js