Skip to content

Commit 6ff4e51

Browse files
feat: Implement dark mode support in MorePage component
1 parent bcae826 commit 6ff4e51

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

src/pages/More.tsx

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ const MorePage: React.FC = () => {
2020
const [pagesByCategory, setPagesByCategory] = useState<
2121
Record<string, MorePageType[]>
2222
>({});
23+
const [isDarkMode, setIsDarkMode] = useState(false);
2324
const [activeCategory, setActiveCategory] = useState<string>('All');
2425
const [notFoundSlug, setNotFoundSlug] = useState<string | null>(null);
2526
const [zoomableImages, setZoomableImages] = useState<HTMLImageElement[]>([]);
@@ -28,6 +29,20 @@ const MorePage: React.FC = () => {
2829
alt: string;
2930
} | null>(null);
3031

32+
useEffect(() => {
33+
const dark = document.documentElement.classList.contains('dark');
34+
setIsDarkMode(dark);
35+
36+
const observer = new MutationObserver(() => {
37+
const updatedDark = document.documentElement.classList.contains('dark');
38+
setIsDarkMode(updatedDark);
39+
});
40+
41+
observer.observe(document.documentElement, { attributes: true });
42+
43+
return () => observer.disconnect();
44+
}, []);
45+
3146
useEffect(() => {
3247
const loadPage = async () => {
3348
setIsLoading(true);
@@ -213,7 +228,7 @@ const MorePage: React.FC = () => {
213228
transition={{ duration: 0.5 }}
214229
key={page?.slug}
215230
>
216-
<div className="bg-white rounded-lg shadow-md p-6">
231+
<div className={`${isDarkMode?"bg-amber-950":"bg-white"} rounded-lg shadow-md p-6`}>
217232
{page ? (
218233
<div className="prose prose-lg max-w-none">
219234
<MarkdownRenderer

0 commit comments

Comments
 (0)