From a0ea599c0598ce701caecf5ec8779d0a42fc5478 Mon Sep 17 00:00:00 2001 From: JOJO <1498581755@qq.com> Date: Wed, 29 Jul 2026 23:21:13 +0800 Subject: [PATCH] =?UTF-8?q?fix(ui):=20=E6=A8=A1=E5=9E=8B=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E5=8A=A0=E8=BD=BD=E4=B8=8E=E5=B7=A5=E4=BD=9C=E5=8C=BA=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E8=A7=A3=E8=80=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit loadInitialData 先请求 /api/status 再拉取模型列表,未创建工作区时 status 503 导致 fetchModels 不执行、模型选择器为空。现将 fetchModels 提前到 status 请求之前,无工作区也能看到已配置的模型。 --- static/src/app/methods/ui/socket.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/static/src/app/methods/ui/socket.ts b/static/src/app/methods/ui/socket.ts index f12f26f4..ccaceb35 100644 --- a/static/src/app/methods/ui/socket.ts +++ b/static/src/app/methods/ui/socket.ts @@ -228,6 +228,13 @@ export const socketMethods = { try { debugLog('加载初始数据...'); + // 模型列表与工作区状态解耦:即使 /api/status 不可用(如尚未创建工作区), + // 也要先加载已配置的模型,保证模型选择器可用 + const modelStore = useModelStore(); + await modelStore.fetchModels().catch((err) => { + console.warn('加载模型列表失败,使用前端默认列表:', err); + }); + const statusResponse = await fetch('/api/status'); if (!statusResponse.ok) { throw new Error(`状态接口请求失败: ${statusResponse.status}`); @@ -243,10 +250,6 @@ export const socketMethods = { this.fetchPendingToolApprovals(); // 立即更新配额和运行模式,避免等待其他慢接口 this.fetchUsageQuota(); - const modelStore = useModelStore(); - await modelStore.fetchModels().catch((err) => { - console.warn('加载模型列表失败,使用前端默认列表:', err); - }); if (statusData && typeof statusData.model_key === 'string') { modelStore.setModel(statusData.model_key); this.currentModelKey = modelStore.currentModelKey;