From 91c82965b2d987452ca276e3a03b48c8dcda2ae9 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期三, 19 八月 2026 11:47:26 +0800
Subject: [PATCH] config(env): 更新生产环境配置和公司名称
---
src/components/upload/file-upload.vue | 39 ++++++++-------------------------------
1 files changed, 8 insertions(+), 31 deletions(-)
diff --git a/src/components/upload/file-upload.vue b/src/components/upload/file-upload.vue
index 15eb640..3692d2e 100644
--- a/src/components/upload/file-upload.vue
+++ b/src/components/upload/file-upload.vue
@@ -10,12 +10,9 @@
import { IconifyIcon } from '@vben/icons';
import { $t } from '@vben/locales';
-import { checkFileType, isFunction, isImage, isObject, isString } from '@vben/utils';
+import { checkFileType, isFunction, isObject, isString } from '@vben/utils';
import { Button, message, Upload } from 'ant-design-vue';
-
-import { requestClient } from '#/api/request';
-import { FilePreviewModal, useFilePreview } from '#/components/file-preview';
import { UploadResultStatus } from './typing';
import { useUpload, useUploadType } from './use-upload';
@@ -142,31 +139,14 @@
}
}
-const { openPreview, previewState } = useFilePreview();
-const previewLoading = ref(false);
-
/** 澶勭悊鏂囦欢棰勮 */
-async function handlePreview(file: UploadFile) {
+function handlePreview(file: UploadFile) {
const url = (file as any)?.url || (file as any)?.response?.url || (file as any)?.response;
if (!url) {
message.warning('鏂囦欢鍦板潃涓嶅瓨鍦紝鏃犳硶棰勮');
return;
}
- const name = file.name || (file as any)?.fileName || '';
- if (isImage(name || url)) {
- window.open(url, '_blank');
- return;
- }
- previewLoading.value = true;
- try {
- const blob = await requestClient.get(url, { responseType: 'blob' }) as unknown as Blob;
- const blobUrl = URL.createObjectURL(blob);
- openPreview(blobUrl, name);
- } catch {
- message.error('鏂囦欢鍔犺浇澶辫触锛岃灏濊瘯涓嬭浇鍚庢煡鐪�');
- } finally {
- previewLoading.value = false;
- }
+ window.open(url, '_blank');
emit('preview', file);
}
@@ -312,14 +292,14 @@
:progress="{ showInfo: true }"
:show-upload-list="{
showPreviewIcon: true,
- showRemoveIcon: true,
+ showRemoveIcon: !disabled,
showDownloadIcon,
}"
@remove="handleRemove"
@preview="handlePreview"
@reject="handleExceed"
>
- <div v-if="drag" class="upload-drag-area">
+ <div v-if="drag && !disabled" class="upload-drag-area">
<p class="ant-upload-drag-icon">
<IconifyIcon icon="lucide:cloud-upload" />
</p>
@@ -328,7 +308,9 @@
鏀寔{{ accept.join('/') }}鏍煎紡鏂囦欢锛屼笉瓒呰繃{{ maxSize }}MB
</p>
</div>
- <div v-else-if="fileList && fileList.length < maxNumber">
+ <div
+ v-else-if="!disabled && fileList && fileList.length < maxNumber"
+ >
<Button>
<IconifyIcon icon="lucide:cloud-upload" />
{{ $t('ui.upload.upload') }}
@@ -345,11 +327,6 @@
鏍煎紡鏂囦欢
</div>
</Upload>
- <FilePreviewModal
- v-model:visible="previewState.visible.value"
- :file-url="previewState.fileUrl.value"
- :file-name="previewState.fileName.value"
- />
</div>
</template>
--
Gitblit v1.9.3