From a1a56050ceb9811cf36aaa97604ce627b7b607df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=BF=97=E9=B9=8F?= <2916022834@qq.com> Date: Thu, 30 Oct 2025 17:12:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9=E4=B8=8B=E8=BD=BD=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E5=90=8D=E5=AD=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/tools.ts | 4 ++-- src/views/Workshop/creation/creation-details.vue | 7 ++----- src/views/Workshop/creation/creation-list.vue | 11 +++-------- 3 files changed, 7 insertions(+), 15 deletions(-) diff --git a/src/utils/tools.ts b/src/utils/tools.ts index 0f81fc0..69b2286 100644 --- a/src/utils/tools.ts +++ b/src/utils/tools.ts @@ -108,7 +108,7 @@ export function FormatDate(value: Date | number | string, format: string = 'yyyy * @param onError 下载错误回调 * @param onSuccess 下载成功回调 */ -export async function DownloadImages(list: Array<{ url: string, name: string }>, onProgress?: (count: number, total: number, item: any) => void, onError?: (count: number, total: number, item: any) => void, onSuccess?: (successCount: number, errCount: number) => void) { +export async function DownloadImages(list: Array<{ url: string, name?: string }>, onProgress?: (count: number, total: number, item: any) => void, onError?: (count: number, total: number, item: any) => void, onSuccess?: (successCount: number, errCount: number) => void) { const total = list.length; let count = 0; let successCount = 0; @@ -124,7 +124,7 @@ export async function DownloadImages(list: Array<{ url: string, name: string }>, const blob = this.response; const a = document.createElement('a'); a.href = URL.createObjectURL(blob); - a.download = list[i].name || list[i].url; + a.download = list[i].name || list[i].url.split('/').pop().split('?').shift(); a.click(); successCount++; typeof onProgress === "function" && onProgress(count, total, list[i]); diff --git a/src/views/Workshop/creation/creation-details.vue b/src/views/Workshop/creation/creation-details.vue index 5810ae8..6057d36 100644 --- a/src/views/Workshop/creation/creation-details.vue +++ b/src/views/Workshop/creation/creation-details.vue @@ -4,15 +4,12 @@ import { DownloadImages } from '@/utils/tools' const router = useRouter() const query = computed(() => router.currentRoute.value.query) - const styleUrl = computed(() => query.value.styleUrl) + const styleUrl = computed(() => query.value.styleUrl as string) onMounted(() => {}) const loading = ref(false) const onDownload = () => { - DownloadImages([{ - url: styleUrl.value, - name: 'lane-crawford.png' - }]) + DownloadImages([{ url: styleUrl.value }]) } const onEdit = () => { console.log('edit') diff --git a/src/views/Workshop/creation/creation-list.vue b/src/views/Workshop/creation/creation-list.vue index 26ada1e..f1fa470 100644 --- a/src/views/Workshop/creation/creation-list.vue +++ b/src/views/Workshop/creation/creation-list.vue @@ -13,7 +13,7 @@ const router = useRouter() const emit = defineEmits(['view-type']) const query = computed(() => router.currentRoute.value.query) - const visitRecordId = computed(() => query.value.visitRecordId) + const visitRecordId = computed(() => query.value.visitRecordId)// 访问记录ID import { useGenerateStore } from '@/stores' const generateStore = useGenerateStore() @@ -85,11 +85,7 @@ if (v.loading) return v.loading = true v.selected = false - const obj = { - url: v.tryOnUrl, - name: v.tryOnUrl.split('/').pop() - } - DownloadImages([obj], null, null, () => { + DownloadImages([{ url: v.tryOnUrl }], null, null, () => { v.loading = false v.downloaded = true }) @@ -114,8 +110,7 @@ v.loading = true downloadList.push({ index: i, - url: v.tryOnUrl, - name: v.tryOnUrl.split('/').pop() + url: v.tryOnUrl }) } })