From b10df4ee1d4bf67c5314418405dc050a150031f8 Mon Sep 17 00:00:00 2001 From: kjqwer <2990346238@qq.com> Date: Wed, 12 Nov 2025 13:12:43 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E7=BE=8E=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 50 +++++++- src/components/BackgroundCanvas.vue | 189 ++++++++++++++++++++++++++++ src/components/DevtoolsBanner.vue | 81 ++++++++++++ src/stores/promptStore.ts | 1 + 4 files changed, 320 insertions(+), 1 deletion(-) create mode 100644 src/components/BackgroundCanvas.vue create mode 100644 src/components/DevtoolsBanner.vue diff --git a/src/App.vue b/src/App.vue index bee13c6..18dfcef 100644 --- a/src/App.vue +++ b/src/App.vue @@ -3,10 +3,13 @@ import { ref, onMounted } from 'vue' import PromptEditor from './components/PromptEditor.vue' import PromptManager from './components/PromptManager.vue' import PresetManager from './components/PresetManager.vue' +import BackgroundCanvas from './components/BackgroundCanvas.vue' +import DevtoolsBanner from './components/DevtoolsBanner.vue' import { usePromptStore } from './stores/promptStore' const currentView = ref<'editor' | 'manager' | 'presets'>('editor') const isDark = ref(false) +const showBackground = ref(true) const store = usePromptStore() onMounted(() => { @@ -16,6 +19,8 @@ onMounted(() => { updateTheme() // 初始化词库与编辑器状态(仅一次) store.initialize() + const bg = localStorage.getItem('bg.enabled') + showBackground.value = bg === null ? true : bg === 'on' }) function toggleTheme() { @@ -31,13 +36,20 @@ function updateTheme() { function switchView(view: 'editor' | 'manager' | 'presets') { currentView.value = view } + +function toggleBackground() { + showBackground.value = !showBackground.value + localStorage.setItem('bg.enabled', showBackground.value ? 'on' : 'off') +}