From ba303eb3ba2c31c58f07d6a9b56fa4a6579ddd71 Mon Sep 17 00:00:00 2001 From: qianmoQ Date: Wed, 24 Dec 2025 16:27:23 +0800 Subject: [PATCH 1/8] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E6=8F=92?= =?UTF-8?q?=E4=BB=B6=E7=A6=81=E7=94=A8=E5=90=AF=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 7 ++-- src/components/Settings.vue | 3 +- src/components/setting/Language.vue | 34 +++++++++++------ src/composables/useLanguageManager.ts | 44 +++++++++++++++++++--- src/composables/useLanguageSettings.ts | 51 +++++++++++++++++++------- src/composables/usePluginConfig.ts | 8 ++-- src/composables/useSettings.ts | 12 +++--- src/ui/Tabs.vue | 32 +++++++--------- 8 files changed, 129 insertions(+), 62 deletions(-) diff --git a/src/App.vue b/src/App.vue index c59bd45..8a0b501 100644 --- a/src/App.vue +++ b/src/App.vue @@ -114,6 +114,7 @@ const { getLanguageDisplayName, getCurrentConsoleType, handleLanguageChange, + refreshLanguageList, initialize } = useLanguageManager(code, clearOutput, toast) @@ -136,13 +137,13 @@ const { const editorConfigKey = ref(0) const consoleType = ref('console') -// 处理设置变更 -const handleSettingsChanged = (config: any) => { +const handleSettingsChanged = async (config: any) => { console.log('主组件接收到设置变更:', config) - // 延迟一点点再刷新,减少闪烁 setTimeout(() => { editorConfigKey.value++ }, 50) + + await refreshLanguageList() } const loadExample = (content: string) => { diff --git a/src/components/Settings.vue b/src/components/Settings.vue index 52224fc..a11a534 100644 --- a/src/components/Settings.vue +++ b/src/components/Settings.vue @@ -18,7 +18,7 @@ @@ -43,6 +43,7 @@ const { activeTab, tabsData, handleEditorSettingsChanged, + handleLanguageSettingsChanged, handleEditorError, closeSettings, initialize diff --git a/src/components/setting/Language.vue b/src/components/setting/Language.vue index 68b96fb..1cdb2f7 100644 --- a/src/components/setting/Language.vue +++ b/src/components/setting/Language.vue @@ -8,6 +8,18 @@ :nav-class="['max-h-[70vh] overflow-y-auto']" :tabs="tabsPluginData" @change="handleTabChange"> +