From 7f85747906d8c5ac4fb401aa7abc70ebc6bddf4d Mon Sep 17 00:00:00 2001 From: X1627315083 <1627315083@qq.com> Date: Mon, 27 Oct 2025 11:26:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0401=E6=B8=85=E9=99=A4?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E7=9A=84=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/stores/modules/generate.ts | 23 ++++++++++++++++++++++- src/utils/request.ts | 11 ++++++++--- src/views/Workshop/product.vue | 6 +++++- 3 files changed, 35 insertions(+), 5 deletions(-) diff --git a/src/stores/modules/generate.ts b/src/stores/modules/generate.ts index ca779a2..abe3f37 100644 --- a/src/stores/modules/generate.ts +++ b/src/stores/modules/generate.ts @@ -11,7 +11,7 @@ export const useGenerateStore = defineStore({ model: { id: '', }, - originalTryOn:{//生成穿好衣服的回参 + originalTryOn: {//生成穿好衣服的回参 id: '', isLike: false,//是否喜欢 tryOnUrl:'', @@ -74,6 +74,21 @@ export const useGenerateStore = defineStore({ setIsGenerate(isGenerate: boolean) { this.isGenerate = isGenerate }, + clearProductData(){ + this.style = { + id: '', + oldId: '', + } + this.model = { + id: '', + } + this.originalTryOn = { + id: '', + isLike: false, + tryOnUrl:'', + } + this.isGenerate = false + }, /** 更新顾客照片信息 */ updatePhotoInfo(data: any) { this.photoInfo.id = data.id || "" @@ -89,5 +104,11 @@ export const useGenerateStore = defineStore({ this.customizeInfo.isRegenerated = "" this.customizeInfo.isFavorite = false }, + //设置默认数据 + clearGenerateData() { + this.clearProductData() + this.updatePhotoInfo() + this.clearCustomizeInfo() + } } }) \ No newline at end of file diff --git a/src/utils/request.ts b/src/utils/request.ts index 2089cd4..48b5446 100644 --- a/src/utils/request.ts +++ b/src/utils/request.ts @@ -4,7 +4,7 @@ import { useUserInfoStore } from '@/stores/modules/userInfo' const store = useUserInfoStore() import { getLocal } from '@/utils/local' import router from '@/router/index' -import { useOverallStore } from '@/stores' +import { useOverallStore, useGenerateStore } from '@/stores' // 创建axios实例 @@ -98,8 +98,13 @@ service.interceptors.response.use( // location.reload() // 为了重新实例化vue-router对象 避免bug // }) // }) - router.replace('/login') - return Promise.reject(error) + showToast({ + message: 'Please log in and try again.', + duration: 5000 + }) + router.push('/welcome') + useGenerateStore().clearGenerateData() + return Promise.reject(false) } error.config && removePending(error.config) // 关闭loading diff --git a/src/views/Workshop/product.vue b/src/views/Workshop/product.vue index 77b3eff..a953425 100644 --- a/src/views/Workshop/product.vue +++ b/src/views/Workshop/product.vue @@ -54,7 +54,11 @@ const startGenerate = ()=>{ generateStore.setIsGenerate(false) generateStore.clearCustomizeInfo() - }).catch(()=>{ + }).catch((error)=>{ + console.log(error) + if(error === false){ + return + } data.isLoading = false; if(generateStore.originalTryOn.id){ router.back()