From f206f1f5ced2e4e465f98d85e2b0d2528f223f59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=96=8C?= <259278618@qq.com> Date: Fri, 28 Aug 2026 17:04:30 +0800 Subject: [PATCH] 1 --- server_admin/src/views/Datasets.vue | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/server_admin/src/views/Datasets.vue b/server_admin/src/views/Datasets.vue index 1afbb7e..a3e03f7 100644 --- a/server_admin/src/views/Datasets.vue +++ b/server_admin/src/views/Datasets.vue @@ -91,6 +91,15 @@ function onCoverChange(file, fileList) { if (coverFile.value) coverDeleted.value = false } +// 已有一张封面时仍选择新文件(如相册多选触发 on-exceed):替换为最后一张,保持单张语义 +function onCoverExceed(files) { + const last = files[files.length - 1] + coverFileList.value = [{ name: last.name, raw: last, url: URL.createObjectURL(last), status: 'ready' }] + coverFile.value = last + coverDeleted.value = false + ElMessage.info('封面仅支持一张,已替换为最后选择的图片') +} + // 删除项:删服务端已有封面(无 raw)→ 标记待删除;删新选文件且列表清空 → 同样按删除处理(服务端旧封面仍在) function onCoverRemove(file) { coverFile.value = null @@ -336,8 +345,10 @@ onBeforeUnmount(() => { :auto-upload="false" accept=".jpg,.jpeg,.png" list-type="picture-card" + :limit="1" :on-change="onCoverChange" :on-remove="onCoverRemove" + :on-exceed="onCoverExceed" >