fix: 完善活动公告,修复图片生成参考图无法放大问题。

This commit is contained in:
Gsh
2026-01-19 22:58:20 +08:00
parent 4ce77ececc
commit ace5a9a1ec
2 changed files with 174 additions and 38 deletions

View File

@@ -46,6 +46,8 @@ const generating = ref(false);
const currentTaskId = ref('');
const currentTask = ref<TaskStatusResponse | null>(null);
const showViewer = ref(false);
const referenceImageViewerVisible = ref(false);
const referenceImagePreviewUrl = ref('');
let pollTimer: any = null;
let debounceTimer: any = null;
@@ -130,6 +132,17 @@ function handleRemove(file: UploadFile) {
fileList.value.splice(index, 1);
}
function handlePreview(file: UploadFile) {
if (file.url) {
referenceImagePreviewUrl.value = file.url;
referenceImageViewerVisible.value = true;
}
}
function closeReferenceImageViewer() {
referenceImageViewerVisible.value = false;
}
// Handle paste event for reference images
function handlePaste(event: ClipboardEvent) {
const items = event.clipboardData?.items;
@@ -510,6 +523,7 @@ onUnmounted(() => {
:limit="2"
:on-change="handleFileChange"
:on-remove="handleRemove"
:on-preview="handlePreview"
accept=".jpg,.jpeg,.png,.bmp,.webp"
:class="{ 'hide-upload-btn': fileList.length >= 2 }"
>
@@ -644,6 +658,15 @@ onUnmounted(() => {
</div>
</div>
</div>
<!-- 参考图预览组件 -->
<teleport to="body">
<el-image-viewer
v-if="referenceImageViewerVisible && referenceImagePreviewUrl"
:url-list="[referenceImagePreviewUrl]"
@close="closeReferenceImageViewer"
/>
</teleport>
</template>
<style scoped>