|
@@ -1,7 +1,7 @@
|
|
import { defineStore } from "pinia";
|
|
import { defineStore } from "pinia";
|
|
import { AudioPlayTime, Store } from "@/types/student-client";
|
|
import { AudioPlayTime, Store } from "@/types/student-client";
|
|
|
|
|
|
-const initStore: Store = {
|
|
|
|
|
|
+const initState: Store = {
|
|
user: {} as Store["user"],
|
|
user: {} as Store["user"],
|
|
menus: {} as Store["menus"],
|
|
menus: {} as Store["menus"],
|
|
appDownload: {} as Store["appDownload"],
|
|
appDownload: {} as Store["appDownload"],
|
|
@@ -39,9 +39,7 @@ export function resetStore() {
|
|
}
|
|
}
|
|
|
|
|
|
export const useStore = defineStore("ecs", {
|
|
export const useStore = defineStore("ecs", {
|
|
- state: () => {
|
|
|
|
- return initStore;
|
|
|
|
- },
|
|
|
|
|
|
+ state: () => initState,
|
|
getters: {
|
|
getters: {
|
|
/** 当前是否有globalMask */
|
|
/** 当前是否有globalMask */
|
|
hasGlobalMask(): boolean {
|
|
hasGlobalMask(): boolean {
|
|
@@ -159,14 +157,15 @@ export const useStore = defineStore("ecs", {
|
|
},
|
|
},
|
|
});
|
|
});
|
|
|
|
|
|
-export let store = null as unknown as ReturnType<typeof useStore>;
|
|
|
|
|
|
+type GlobalStore = ReturnType<typeof useStore>;
|
|
|
|
+
|
|
|
|
+export let store: GlobalStore;
|
|
|
|
|
|
-export function setStore(s: ReturnType<typeof useStore>) {
|
|
|
|
|
|
+export function setStore(s: GlobalStore) {
|
|
store = s;
|
|
store = s;
|
|
|
|
+ storeListener();
|
|
}
|
|
}
|
|
-void Promise.resolve(0).then(() => {
|
|
|
|
- // store = useStore();
|
|
|
|
-
|
|
|
|
|
|
+function storeListener() {
|
|
store?.$subscribe((_mutation, state) => {
|
|
store?.$subscribe((_mutation, state) => {
|
|
sessionStorage.setItem(
|
|
sessionStorage.setItem(
|
|
"ecs",
|
|
"ecs",
|
|
@@ -177,4 +176,4 @@ void Promise.resolve(0).then(() => {
|
|
});
|
|
});
|
|
const cachedState = JSON.parse(sessionStorage.getItem("ecs") || "0");
|
|
const cachedState = JSON.parse(sessionStorage.getItem("ecs") || "0");
|
|
cachedState && (store.$state = cachedState);
|
|
cachedState && (store.$state = cachedState);
|
|
-});
|
|
|
|
|
|
+}
|