From 3324a54fa4d0840f8a5dc8adb21753180ecd3f3c Mon Sep 17 00:00:00 2001 From: zhangwei <1504152376@qq.com> Date: 星期二, 02 九月 2025 14:25:06 +0800 Subject: [PATCH] 公告信息页面 --- src/views/system/component/pdfPreview.vue | 37 ++++++++++++++++++++++++++++++++++--- 1 files changed, 34 insertions(+), 3 deletions(-) diff --git a/src/views/system/component/pdfPreview.vue b/src/views/system/component/pdfPreview.vue index 48748a0..1e71bab 100644 --- a/src/views/system/component/pdfPreview.vue +++ b/src/views/system/component/pdfPreview.vue @@ -6,7 +6,6 @@ > <iframe id="printIframe" - :src="pdfSrc" frameborder="0" style="width: 100%; height: 100%" @load="iframeLoaded" @@ -15,14 +14,46 @@ </template> <script setup lang="ts"> -import { ref } from "vue"; -import pdfSrc from "./鍥涘窛鎷涙爣鎶曟爣浜ゆ槗鏈嶅姟骞冲彴鐢ㄦ埛鎿嶄綔鎵嬪唽锛堜唬鐞嗘満鏋勶級.pdf"; +import { ref, defineProps } from "vue"; +const props = defineProps({ + // fileInfo: { + // type: String, + // default: "" + // } + fileInfo: { + type: Object, + required: true + } +}); let isLoading = ref(true); const iframeLoaded = () => { console.log("jjjjjj"); isLoading.value = false; }; +const pdfUrl = props.fileInfo.filePath; +// 鐢╢etch鑾峰彇鏂囦欢娴侊紝寮哄埗杞负棰勮鏍煎紡 +fetch(pdfUrl) + .then(response => { + // 妫�鏌ュ搷搴旀槸鍚︽垚鍔� + if (!response.ok) throw new Error("鏂囦欢鑾峰彇澶辫触"); + // 寮哄埗鑾峰彇Blob瀵硅薄锛堟寚瀹歅DF绫诲瀷锛� + return response.blob(); + }) + .then(blob => { + // 鐢熸垚涓存椂棰勮URL锛堟祻瑙堝櫒鏈湴涓存椂閾炬帴锛屾棤涓嬭浇瑙﹀彂锛� + const blobUrl = URL.createObjectURL( + new Blob([blob], { type: "application/pdf" }) // 鏄庣‘鎸囧畾PDF绫诲瀷 + ); + // 璧嬪�肩粰iframe骞舵樉绀� + const iframe = document.getElementById("printIframe"); + iframe.src = blobUrl; + iframe.style.display = "block"; + document.getElementById("loading").style.display = "none"; + }) + .catch(error => { + // document.getElementById("loading").innerText = `鍔犺浇澶辫触锛�${error.message}`; + }); </script> <style> .pdf-container { -- Gitblit v1.9.1