diff --git a/src/composables/websocket/useDictSync.ts b/src/composables/websocket/useDictSync.ts index 77a9c8e4..b0823620 100644 --- a/src/composables/websocket/useDictSync.ts +++ b/src/composables/websocket/useDictSync.ts @@ -39,7 +39,7 @@ function createDictSyncHook() { const messageCallbacks = ref([]); // 重试定时器 - let retryTimer: any = null; + let retryTimer: ReturnType | null = null; /** * 注册字典消息回调 diff --git a/src/store/modules/dict-store.ts b/src/store/modules/dict-store.ts index 34d8acaf..6de2fe6a 100644 --- a/src/store/modules/dict-store.ts +++ b/src/store/modules/dict-store.ts @@ -26,10 +26,16 @@ export const useDictStore = defineStore("dict", () => { if (dictCache.value[dictCode]) return; // 防止重复请求 if (!requestQueue[dictCode]) { - requestQueue[dictCode] = DictAPI.getDictItems(dictCode).then((data) => { - cacheDictItems(dictCode, data); - Reflect.deleteProperty(requestQueue, dictCode); - }); + requestQueue[dictCode] = DictAPI.getDictItems(dictCode) + .then((data) => { + cacheDictItems(dictCode, data); + Reflect.deleteProperty(requestQueue, dictCode); + }) + .catch((error) => { + // 请求失败,清理队列,允许重试 + Reflect.deleteProperty(requestQueue, dictCode); + throw error; + }); } await requestQueue[dictCode]; };