From e16a0fa6ed5e8d7992c00746d2b07963eb6337d1 Mon Sep 17 00:00:00 2001
From: AN <1983933789@qq.com>
Date: Wed, 11 Jun 2025 11:09:34 +0800
Subject: [PATCH] =?UTF-8?q?fix(components):=20=E4=BF=AE=E5=A4=8D=E4=B8=8A?=
=?UTF-8?q?=E4=BC=A0=E7=BB=84=E4=BB=B6=E5=9B=9E=E6=98=BE=E9=97=AE=E9=A2=98?=
=?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9accept=E5=8F=82=E6=95=B0=E9=80=BB?=
=?UTF-8?q?=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/custom/file-upload.vue | 18 ++++--
src/components/custom/oss-upload.vue | 56 +++++++++++++------
src/enum/business.ts | 4 ++
src/utils/common.ts | 4 +-
.../demo/demo/modules/demo-operate-drawer.vue | 5 +-
.../system/oss/modules/oss-upload-modal.vue | 5 +-
6 files changed, 63 insertions(+), 29 deletions(-)
create mode 100644 src/enum/business.ts
diff --git a/src/components/custom/file-upload.vue b/src/components/custom/file-upload.vue
index 1481aacc..46a4b18c 100644
--- a/src/components/custom/file-upload.vue
+++ b/src/components/custom/file-upload.vue
@@ -1,9 +1,10 @@
-
+
+
diff --git a/src/enum/business.ts b/src/enum/business.ts
new file mode 100644
index 00000000..e5b62ec8
--- /dev/null
+++ b/src/enum/business.ts
@@ -0,0 +1,4 @@
+export enum AcceptType {
+ Image = '.jpg,.jpeg,.png,.gif,.bmp,.webp',
+ File = '.doc,.docx,.xls,.xlsx,.ppt,.pptx,.txt,.pdf,.zip,.rar,.7z'
+}
diff --git a/src/utils/common.ts b/src/utils/common.ts
index 22ac43e7..b5489f37 100644
--- a/src/utils/common.ts
+++ b/src/utils/common.ts
@@ -1,3 +1,4 @@
+import { AcceptType } from '@/enum/business';
import { $t } from '@/locales';
/**
* Transform record to option
@@ -87,8 +88,7 @@ export function isNull(value: any) {
/** 判断是否为图片类型 */
export function isImage(suffix: string) {
- const imgSuffixList = ['.jpg', '.jpeg', '.png', '.gif', '.webp'];
- return imgSuffixList.includes(suffix.toLowerCase());
+ return AcceptType.Image.split(',').includes(suffix.toLowerCase());
}
/**
diff --git a/src/views/demo/demo/modules/demo-operate-drawer.vue b/src/views/demo/demo/modules/demo-operate-drawer.vue
index ca87a6f4..18c1e976 100644
--- a/src/views/demo/demo/modules/demo-operate-drawer.vue
+++ b/src/views/demo/demo/modules/demo-operate-drawer.vue
@@ -53,12 +53,13 @@ function createDefaultModel(): Model {
};
}
-type RuleKey = Extract;
+type RuleKey = Extract;
const rules: Record = {
id: createRequiredRule('主键不能为空'),
deptId: createRequiredRule('部门不能为空'),
userId: createRequiredRule('用户不能为空'),
+ orderNum: createRequiredRule('排序号不能为空'),
testKey: createRequiredRule('key 键不能为空'),
value: createRequiredRule('值不能为空')
};
@@ -124,7 +125,7 @@ watch(visible, () => {
-
+
diff --git a/src/views/system/oss/modules/oss-upload-modal.vue b/src/views/system/oss/modules/oss-upload-modal.vue
index 60d14b5a..54dd1053 100644
--- a/src/views/system/oss/modules/oss-upload-modal.vue
+++ b/src/views/system/oss/modules/oss-upload-modal.vue
@@ -2,6 +2,7 @@
import { computed, ref, watch } from 'vue';
import type { UploadFileInfo } from 'naive-ui';
import FileUpload from '@/components/custom/file-upload.vue';
+import { AcceptType } from '@/enum/business';
defineOptions({
name: 'OssUploadModal'
@@ -23,9 +24,7 @@ const visible = defineModel('visible', {
default: false
});
-const accept = computed(() => {
- return props.uploadType === 'file' ? '.doc,.docx,.xls,.xlsx,.ppt,.pptx,.txt,.pdf' : '.jpg,.jpeg,.png,.gif,.bmp,.webp';
-});
+const accept = computed(() => (props.uploadType === 'file' ? AcceptType.File : AcceptType.Image));
const fileList = ref([]);