From cb882df5bc9056483d5c722d591e93225bbf01cc Mon Sep 17 00:00:00 2001 From: ye1023 <12588209+ye1023@user.noreply.gitee.com> Date: Thu, 9 Jul 2026 10:18:49 +0800 Subject: [PATCH] =?UTF-8?q?yxk-20260709=20=E6=96=87=E4=BB=B6=E5=9C=A8?= =?UTF-8?q?=E7=BA=BF=E9=A2=84=E8=A7=88=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../semri/fileComponent/SUploadFile.vue | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/src/components/semri/fileComponent/SUploadFile.vue b/src/components/semri/fileComponent/SUploadFile.vue index 0b6f317..cceb5eb 100644 --- a/src/components/semri/fileComponent/SUploadFile.vue +++ b/src/components/semri/fileComponent/SUploadFile.vue @@ -46,6 +46,14 @@
+ + + 预览 + ({ + url: '/sys/file/previewUrl', + params: { id: fileId } + }); + if (!previewDownloadUrl) { + createMessage.warning('获取文件预览地址失败'); + return; + } + const previewUrl = `${viewUrl}?url=${encodeURIComponent(encryptByBase64(previewDownloadUrl))}`; + openPreviewWindow(previewUrl); + } catch (error) { + console.error('预览失败:', error); + createMessage.error('文件预览失败'); + } +} + +function openPreviewWindow(previewUrl: string) { + // 预览地址包含短时 token,仅用于打开 kkFileView,不在前端弹窗展示。 + window.open(previewUrl, '_blank'); +} + async function handleDownload(file: any) { try { const fileUrl = file.filePath;