@@ -182,14 +174,7 @@
-
+
@@ -219,13 +204,12 @@
import { ref, onMounted, watch } from 'vue'
import { useRouter, useRoute } from 'vue-router'
import { usePublicSettings } from '../composables/usePublicSettings'
-import { useTheme } from '../composables/useTheme'
import Icon from './Icon.vue'
+import ThemeToggle from './ThemeToggle.vue'
const router = useRouter()
const route = useRoute()
const { cache, getStringSetting } = usePublicSettings()
-const { themeIcon, themeLabel, cycleTheme } = useTheme()
const activeNav = ref('home')
const siteTitle = ref('')
const visibleMenus = ref(['home', 'blog', 'columns', 'works', 'videos', 'snippets', 'about', 'services'])
diff --git a/client/src/components/MobileMenu.vue b/client/src/components/MobileMenu.vue
index fdc6be1..6e36b92 100644
--- a/client/src/components/MobileMenu.vue
+++ b/client/src/components/MobileMenu.vue
@@ -9,10 +9,7 @@
代码
关于
合作
-
+
管理入口
@@ -21,12 +18,10 @@
import { useRouter } from 'vue-router'
import { onMounted, onUpdated, ref, watch } from 'vue'
import { usePublicSettings } from '../composables/usePublicSettings'
-import { useTheme } from '../composables/useTheme'
-import Icon from './Icon.vue'
+import ThemeToggle from './ThemeToggle.vue'
const router = useRouter()
const { cache, getStringSetting } = usePublicSettings()
-const { themeIcon, themeLabel, cycleTheme } = useTheme()
const visibleMenus = ref
(['home', 'blog', 'columns', 'works', 'videos', 'snippets', 'about', 'services'])
const applyMenuSettings = () => {
diff --git a/client/src/components/ThemeToggle.vue b/client/src/components/ThemeToggle.vue
new file mode 100644
index 0000000..f5c6c2b
--- /dev/null
+++ b/client/src/components/ThemeToggle.vue
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/client/src/components/admin/AdminLayout.vue b/client/src/components/admin/AdminLayout.vue
index b4fc788..a7a3a77 100644
--- a/client/src/components/admin/AdminLayout.vue
+++ b/client/src/components/admin/AdminLayout.vue
@@ -115,6 +115,7 @@
+