diff --git a/src/contexts/ThemeContext.tsx b/src/contexts/ThemeContext.tsx index ed48324..1a92d11 100644 --- a/src/contexts/ThemeContext.tsx +++ b/src/contexts/ThemeContext.tsx @@ -1,4 +1,4 @@ -import { createContext, useContext, useEffect, useState, ReactNode } from 'react'; +import { createContext, useContext, useEffect, useState, useCallback, ReactNode } from 'react'; type Theme = 'light' | 'dark' | 'system'; @@ -53,10 +53,10 @@ export function ThemeProvider({ children }: { children: ReactNode }) { return () => mediaQuery.removeEventListener('change', handleChange); }, [theme]); - const setTheme = (newTheme: Theme) => { + const setTheme = useCallback((newTheme: Theme) => { setThemeState(newTheme); localStorage.setItem('theme', newTheme); - }; + }, []); return (