From 50abb55c94a6535870af6ce94c0214805d1b0be0 Mon Sep 17 00:00:00 2001 From: fawney19 Date: Tue, 16 Dec 2025 18:42:58 +0800 Subject: [PATCH] fix(models): clear form state when loading model data for edit Reset model selection, search query, and expanded provider state when switching to edit mode to prevent stale UI state carrying over from previous operations. Also ensure tieredPricing is properly set or reset based on model data. --- .../models/components/GlobalModelFormDialog.vue | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/frontend/src/features/models/components/GlobalModelFormDialog.vue b/frontend/src/features/models/components/GlobalModelFormDialog.vue index 949c9ed..9a478d7 100644 --- a/frontend/src/features/models/components/GlobalModelFormDialog.vue +++ b/frontend/src/features/models/components/GlobalModelFormDialog.vue @@ -604,6 +604,11 @@ function resetForm() { // 加载模型数据(编辑模式) function loadModelData() { if (!props.model) return + // 先重置创建模式的残留状态 + selectedModel.value = null + searchQuery.value = '' + expandedProvider.value = null + form.value = { name: props.model.name, display_name: props.model.display_name, @@ -612,9 +617,10 @@ function loadModelData() { config: props.model.config ? { ...props.model.config } : { streaming: true }, is_active: props.model.is_active, } - if (props.model.default_tiered_pricing) { - tieredPricing.value = JSON.parse(JSON.stringify(props.model.default_tiered_pricing)) - } + // 确保 tieredPricing 也被正确设置或重置 + tieredPricing.value = props.model.default_tiered_pricing + ? JSON.parse(JSON.stringify(props.model.default_tiered_pricing)) + : null } // 使用 useFormDialog 统一处理对话框逻辑