diff --git a/.env.development b/.env.development index e39cfae..248fe20 100644 --- a/.env.development +++ b/.env.development @@ -1 +1,2 @@ -VITE_APP_URL = http://192.168.31.82:8771 \ No newline at end of file +# VITE_APP_URL = http://192.168.31.82:8771 +VITE_APP_URL = http://192.168.31.118:8771 \ No newline at end of file diff --git a/src/components/FooterNavigation.vue b/src/components/FooterNavigation.vue index 556ba0e..f14c00b 100644 --- a/src/components/FooterNavigation.vue +++ b/src/components/FooterNavigation.vue @@ -2,6 +2,7 @@ import { computed } from 'vue' import { useRouter } from 'vue-router' import { showConfirmDialog } from 'vant' + import MyEvent from '@/utils/myEvent' const router = useRouter() const currentRoute = computed(() => router.currentRoute.value.path) @@ -23,6 +24,7 @@ cancelButtonText: 'Cancel', }) .then(() => { + MyEvent.emit('clear-generate-state') nav.path && router.push(nav.path) }) .catch(() => {}) diff --git a/src/stores/modules/generate.ts b/src/stores/modules/generate.ts index da44554..7bffe57 100644 --- a/src/stores/modules/generate.ts +++ b/src/stores/modules/generate.ts @@ -1,5 +1,8 @@ // 每一个存储的模块,命名规则use开头,store结尾 import { defineStore } from 'pinia' +import MyEvent from '@/utils/myEvent' +MyEvent.add('clear-generate-state', () => useGenerateStore().clearGenerateData()) + export const useGenerateStore = defineStore({ id: 'generate', // 必须指明唯一的pinia仓库的id state: () => { diff --git a/src/stores/modules/userInfo.ts b/src/stores/modules/userInfo.ts index 42379f4..e5f9072 100644 --- a/src/stores/modules/userInfo.ts +++ b/src/stores/modules/userInfo.ts @@ -2,7 +2,7 @@ import { defineStore } from 'pinia' import { ref, computed } from 'vue' import { removeLocal, setLocal } from '@/utils/local' - +import MyEvent from '@/utils/myEvent' export const useUserInfoStore = defineStore('userInfo', () => { const state = ref({ userInfo: {}, @@ -48,6 +48,7 @@ export const useUserInfoStore = defineStore('userInfo', () => { state.value.userInfo = {} removeLocal('token') resetGenerateParams() + MyEvent.emit('clear-generate-state') resolve('') }) } diff --git a/src/utils/myEvent.js b/src/utils/myEvent.js new file mode 100644 index 0000000..e3c4e1b --- /dev/null +++ b/src/utils/myEvent.js @@ -0,0 +1,15 @@ +class MyEvent { + static list = [] + add(name, call) { + MyEvent.list.push({ name, call }) + } + remove(name, call) { + MyEvent.list = MyEvent.list.filter(item => item.name != name && item.call != call) + } + emit(name, data) { + MyEvent.list.forEach(item => { + if (item.name == name) item.call(data) + }) + } +} +export default new MyEvent() \ No newline at end of file