Skip to content

Commit cf5e859

Browse files
author
Sharanya Lakkamsetti
committed
Fix: Persist theme selection using localStorage
1 parent 9fa26a8 commit cf5e859

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/context/ThemeContext.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,19 @@ interface ThemeContextType {
1010
export const ThemeContext = createContext<ThemeContextType | null>(null);
1111

1212
const ThemeWrapper = ({ children }: { children: ReactNode }) => {
13-
const [mode, setMode] = useState<'light' | 'dark'>('light');
13+
const [mode, setMode] = useState<'light' | 'dark'>(() => {
14+
const savedMode = localStorage.getItem('theme');
15+
return savedMode === 'dark' ? 'dark' : 'light';
16+
});
17+
1418

1519
useEffect(() => {
1620
if (mode === 'dark') {
1721
document.documentElement.classList.add('dark');
1822
} else {
1923
document.documentElement.classList.remove('dark');
2024
}
25+
localStorage.setItem('theme', mode);
2126
}, [mode]);
2227

2328
const toggleTheme = () => {

0 commit comments

Comments
 (0)