diff --git a/package.json b/package.json index 09f8b296..f8e7115c 100755 --- a/package.json +++ b/package.json @@ -43,6 +43,7 @@ "element-plus": "^2.10.2", "eruda": "^3.4.3", "es-toolkit": "^1.39.5", + "filesize": "^10.1.6", "hotkeys-js": "^3.13.14", "lucide-vue-next": "^0.525.0", "mitt": "^3.0.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 71923315..32684c60 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -80,6 +80,9 @@ importers: es-toolkit: specifier: ^1.39.5 version: 1.39.5 + filesize: + specifier: ^10.1.6 + version: 10.1.6 hotkeys-js: specifier: ^3.13.14 version: 3.13.14 diff --git a/src/components/ImageUpload/index.vue b/src/components/ImageUpload/index.vue deleted file mode 100755 index a05b7802..00000000 --- a/src/components/ImageUpload/index.vue +++ /dev/null @@ -1,253 +0,0 @@ - - - - - diff --git a/src/components/ImagesUpload/index.vue b/src/components/ImagesUpload/index.vue deleted file mode 100755 index 293d933e..00000000 --- a/src/components/ImagesUpload/index.vue +++ /dev/null @@ -1,278 +0,0 @@ - - - - - diff --git a/src/mock/upload.ts b/src/mock/upload.ts new file mode 100644 index 00000000..2e663982 --- /dev/null +++ b/src/mock/upload.ts @@ -0,0 +1,17 @@ +import { defineFakeRoute } from 'vite-plugin-fake-server/client' + +export default defineFakeRoute([ + { + url: '/mock/upload/image', + method: 'post', + response: () => { + return { + error: '', + status: 1, + data: { + url: 'https://fantastic-admin.hurui.me/logo.svg', + }, + } + }, + }, +]) diff --git a/src/router/modules/component.example.ts b/src/router/modules/component.example.ts index 6ef3b668..faffbdfc 100755 --- a/src/router/modules/component.example.ts +++ b/src/router/modules/component.example.ts @@ -118,6 +118,14 @@ const routes: RouteRecordRaw = { title: '图片预览', }, }, + { + path: 'imageupload', + name: 'componentExampleBuiltInImageUpload', + component: () => import('@/views/component_built_in_example/imageupload.vue'), + meta: { + title: '图片上传', + }, + }, { path: 'input', name: 'componentExampleBuiltInInput', diff --git a/src/types/components.d.ts b/src/types/components.d.ts index 5cc8de04..b7575060 100644 --- a/src/types/components.d.ts +++ b/src/types/components.d.ts @@ -25,6 +25,7 @@ declare module 'vue' { FaHoverCard: typeof import('./../ui/components/FaHoverCard/index.vue')['default'] FaIcon: typeof import('./../ui/components/FaIcon/index.vue')['default'] FaImagePreview: typeof import('./../ui/components/FaImagePreview/index.vue')['default'] + FaImageUpload: typeof import('./../ui/components/FaImageUpload/index.vue')['default'] FaInput: typeof import('./../ui/components/FaInput/index.vue')['default'] FaKbd: typeof import('./../ui/components/FaKbd/index.vue')['default'] FaMaskScrollContainer: typeof import('./../ui/components/FaMaskScrollContainer/index.vue')['default'] @@ -48,8 +49,6 @@ declare module 'vue' { FaToast: typeof import('./../ui/components/FaToast/index.vue')['default'] FaTooltip: typeof import('./../ui/components/FaTooltip/index.vue')['default'] FileUpload: typeof import('./../components/FileUpload/index.vue')['default'] - ImagesUpload: typeof import('./../components/ImagesUpload/index.vue')['default'] - ImageUpload: typeof import('./../components/ImageUpload/index.vue')['default'] RouterLink: typeof import('vue-router')['RouterLink'] RouterView: typeof import('vue-router')['RouterView'] } diff --git a/src/ui/components/FaImageUpload/index.vue b/src/ui/components/FaImageUpload/index.vue new file mode 100644 index 00000000..e2b35884 --- /dev/null +++ b/src/ui/components/FaImageUpload/index.vue @@ -0,0 +1,218 @@ + + + diff --git a/src/views/component_built_in_example/imageupload.vue b/src/views/component_built_in_example/imageupload.vue new file mode 100644 index 00000000..cf6bc7bd --- /dev/null +++ b/src/views/component_built_in_example/imageupload.vue @@ -0,0 +1,55 @@ + +meta: + enabled: false + + + + + diff --git a/src/views/component_extend_example/upload.vue b/src/views/component_extend_example/upload.vue index 28cfe689..ece2bfa4 100755 --- a/src/views/component_extend_example/upload.vue +++ b/src/views/component_extend_example/upload.vue @@ -10,12 +10,6 @@ defineOptions({ name: 'ComponentExampleUpload', }) -const image = ref('https://picsum.photos/750/450') -const images = ref([ - 'https://picsum.photos/400', - 'https://picsum.photos/600', - 'https://picsum.photos/500', -]) const files = ref([ { name: 'Fantastic-admin.svg', @@ -23,23 +17,7 @@ const files = ref([ }, ]) -function handleSuccess1(res: any) { - if (res.error === '') { - image.value = res.data.path - } - else { - toast.warning(res.error) - } -} -function handleSuccess2(res: any) { - if (res.error === '') { - images.value.push(res.data.path) - } - else { - toast.warning(res.error) - } -} -function handleSuccess3(res: any, file: any, fileList: any) { +function handleSuccess(res: any, file: any, fileList: any) { if (res.error === '') { files.value.push({ name: file.name, @@ -51,41 +29,6 @@ function handleSuccess3(res: any, file: any, fileList: any) { toast.warning(res.error) } } - -const tableData = [ - { - image: 'https://picsum.photos/750/450', - images: [ - 'https://picsum.photos/400', - 'https://picsum.photos/600', - 'https://picsum.photos/500', - ], - }, - { - image: 'https://picsum.photos/750/450', - images: [ - 'https://picsum.photos/400', - 'https://picsum.photos/600', - 'https://picsum.photos/500', - ], - }, - { - image: 'https://picsum.photos/750/450', - images: [ - 'https://picsum.photos/400', - 'https://picsum.photos/600', - 'https://picsum.photos/500', - ], - }, - { - image: 'https://picsum.photos/750/450', - images: [ - 'https://picsum.photos/400', - 'https://picsum.photos/600', - 'https://picsum.photos/500', - ], - }, -]