From df38398851d3db6c00d340ca7b3405f6ce3d2fc1 Mon Sep 17 00:00:00 2001 From: keven1024 Date: Sun, 20 Apr 2025 21:36:10 +0800 Subject: [PATCH] feat(front): add FileIcon component to display file previews and icons based on file type --- front/components/Field/FileUploadField.vue | 24 +--------- front/components/FileIcon.vue | 55 ++++++++++++++++++++++ 2 files changed, 57 insertions(+), 22 deletions(-) create mode 100644 front/components/FileIcon.vue diff --git a/front/components/Field/FileUploadField.vue b/front/components/Field/FileUploadField.vue index 1c2da10..c2d971e 100644 --- a/front/components/Field/FileUploadField.vue +++ b/front/components/Field/FileUploadField.vue @@ -12,24 +12,11 @@ watch(value, (v) => { console.log('value', v) }) -const imageUrl = computed(() => { - if (value?.value?.type?.startsWith('image/')) { - return URL.createObjectURL(value?.value) - } - return null -}) - const fileInfo = computed(() => { - const [,name, ext] = value?.value?.name?.match(/^(.+)\.(.+)$/) || [] + const [, name, ext] = value?.value?.name?.match(/^(.+)\.(.+)$/) || [] return { name, ext } }) -onUnmounted(() => { - if (imageUrl.value) { - URL.revokeObjectURL(imageUrl.value) - } -}) -