Skip to content

Commit

Permalink
fix theme type
Browse files Browse the repository at this point in the history
  • Loading branch information
chenmh0901 committed Jun 17, 2024
1 parent dbe7be2 commit d1686a1
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 6 deletions.
1 change: 0 additions & 1 deletion src/components/AnimationView/index.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { VIEW_COMPONENTS } from './type'
import type { IView } from '@/types/view'
import { ViewType } from '@/types/view'
import './style.css'

export default function Views({ activeView }: { activeView: IView }) {
Expand Down
4 changes: 2 additions & 2 deletions src/components/ThemeToggle/index.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { useEffect, useState } from 'react'
import { type ThemeMode, getBrowserDefaultTheme, getLocalTheme, setLocalTheme } from '@/utils/theme'
import { ThemeMode, getBrowserDefaultTheme, getLocalTheme, setLocalTheme } from '@/utils/theme'

export default function ThemeToggle() {
// 初始化主题状态
Expand All @@ -10,7 +10,7 @@ export default function ThemeToggle() {
}

const toggleTheme = () => {
const newTheme = theme === 'light' ? 'dark' : 'light' // 根据 checkbox 的状态决定主题
const newTheme: ThemeMode = theme === ThemeMode.Light ? ThemeMode.Dark : ThemeMode.Light
setDocumentTheme(newTheme)
setLocalTheme(newTheme)
setTheme(newTheme)
Expand Down
6 changes: 3 additions & 3 deletions src/utils/theme.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ export function getBrowserDefaultTheme(): ThemeMode {
return window.matchMedia('(prefers-color-scheme: dark)').matches ? ThemeMode.Dark : ThemeMode.Light
}

export function getLocalTheme(): ThemeMode {
return localStorage.getItem('theme') as ThemeMode
export function getLocalTheme(): ThemeMode | null {
return localStorage.getItem('theme') as ThemeMode | null
}

export function setLocalTheme(theme: ThemeMode) {
export function setLocalTheme(theme: ThemeMode): void {
localStorage.setItem('theme', theme)
}

0 comments on commit d1686a1

Please sign in to comment.