Skip to content

Commit 60f001b

Browse files
committed
fix(navbar,theme): theme icon not reflecting current theme correctly
1 parent 7bb39a4 commit 60f001b

File tree

1 file changed

+13
-8
lines changed

1 file changed

+13
-8
lines changed

components/v2/navbar.vue

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<template>
22
<nav
3-
class="sticky top-0 left-0 right-0 z-10 text-gray-800 shadow-lg dark:shadow-dark bg-gray-50 dark:bg-gray-900 dark:text-gray-50"
3+
class="sticky top-0 left-0 right-0 z-10 text-gray-800 shadow-lg dark:shadow-dark bg-gray-50 dark:bg-gray-900 dark:text-gray-50"
44
>
55
<div class="container flex items-center py-4 m-auto">
66
<div
@@ -66,8 +66,10 @@
6666
<slot name="right" />
6767
<button
6868
type="button"
69-
class="inline-flex items-center justify-center ml-4 bg-transparent border-2 border-gray-700 rounded-full shadow-lg w-9 h-9 active:scale-y-75 hover:scale-105 hover:shadow-lg"
70-
aria-label="Toggle Dark Mode"
69+
class="inline-flex items-center justify-center ml-4 bg-transparent border-2 border-gray-700 rounded-full shadow-lg w-9 h-9 active:scale-y-75 hover:scale-105 hover:shadow-lg"
70+
:aria-label="
71+
darkMode ? 'Switch to light theme' : 'Switch to dark theme'
72+
"
7173
@click="toggleDarkMode"
7274
>
7375
<svg
@@ -173,8 +175,8 @@ export default Vue.extend({
173175
},
174176
mounted() {
175177
if (darkMode === null) {
176-
darkMode = this.$cookies.isDarkMode
177-
if (darkMode) {
178+
this.darkMode = darkMode = this.$cookies.isDarkMode
179+
if (this.$cookies.isDarkMode) {
178180
document.documentElement.classList.add('dark')
179181
document.cookie = `darkMode=${darkMode}; Secure; max-age=31536000; path=/;`
180182
}
@@ -183,9 +185,12 @@ export default Vue.extend({
183185
},
184186
methods: {
185187
toggleDarkMode() {
186-
darkMode = !darkMode
187-
document.documentElement.classList[darkMode ? 'add' : 'remove']('dark')
188-
document.cookie = `darkMode=${darkMode}; Secure; max-age=31536000; path=/;`
188+
const currentDarkMode = this.darkMode
189+
document.documentElement.classList[!currentDarkMode ? 'add' : 'remove'](
190+
'dark'
191+
)
192+
document.cookie = `darkMode=${!currentDarkMode}; Secure; max-age=31536000; path=/;`
193+
this.darkMode = !currentDarkMode
189194
},
190195
},
191196
})

0 commit comments

Comments
 (0)