From 2ee5c8da3668f8dffb53c54396f5e6c3f56f14c3 Mon Sep 17 00:00:00 2001 From: AzenKain Date: Mon, 20 Apr 2026 11:22:13 +0700 Subject: [PATCH] fix bug --- src/app/(admin)/layout.tsx | 23 ++++++++++++++++++++--- src/components/auth/SignInForm.tsx | 15 +-------------- src/components/auth/SignUpForm.tsx | 5 +---- src/context/SidebarContext.tsx | 15 --------------- 4 files changed, 22 insertions(+), 36 deletions(-) diff --git a/src/app/(admin)/layout.tsx b/src/app/(admin)/layout.tsx index 018b67f..880e52c 100644 --- a/src/app/(admin)/layout.tsx +++ b/src/app/(admin)/layout.tsx @@ -4,7 +4,10 @@ import { useSidebar } from "@/context/SidebarContext"; import AppHeader from "@/layout/AppHeader"; import AppSidebar from "@/layout/AppSidebar"; import Backdrop from "@/layout/Backdrop"; -import React from "react"; +import { apiGetCurrentUser } from "@/service/auth"; +import { setUserData } from "@/store/features/userSlice"; +import React, { useEffect } from "react"; +import { useDispatch } from "react-redux"; export default function AdminLayout({ children, @@ -12,13 +15,27 @@ export default function AdminLayout({ children: React.ReactNode; }) { const { isExpanded, isHovered, isMobileOpen } = useSidebar(); + const dispatch = useDispatch() + + useEffect(() => { + const fetchUser = async () => { + try { + const userData = await apiGetCurrentUser(); + dispatch(setUserData(userData.data)); + } catch (err) { + console.error("Lỗi:", err); + } + }; + fetchUser(); + }, []) + // Dynamic class for main content margin based on sidebar state const mainContentMargin = isMobileOpen ? "ml-0" : isExpanded || isHovered - ? "lg:ml-[290px]" - : "lg:ml-[90px]"; + ? "lg:ml-[290px]" + : "lg:ml-[90px]"; return (
diff --git a/src/components/auth/SignInForm.tsx b/src/components/auth/SignInForm.tsx index bf11c12..946edc8 100644 --- a/src/components/auth/SignInForm.tsx +++ b/src/components/auth/SignInForm.tsx @@ -109,7 +109,7 @@ export default function SignInForm() {

-
+
- {/* */}
diff --git a/src/components/auth/SignUpForm.tsx b/src/components/auth/SignUpForm.tsx index 8463034..f712be6 100644 --- a/src/components/auth/SignUpForm.tsx +++ b/src/components/auth/SignUpForm.tsx @@ -150,7 +150,7 @@ export default function SignUpForm() { {step === 1 && ( <> -
+
- {/* */}
diff --git a/src/context/SidebarContext.tsx b/src/context/SidebarContext.tsx index f211695..3225455 100644 --- a/src/context/SidebarContext.tsx +++ b/src/context/SidebarContext.tsx @@ -1,8 +1,5 @@ "use client"; -import { apiGetCurrentUser } from "@/service/auth"; -import { setUserData } from "@/store/features/userSlice"; import React, { createContext, useContext, useState, useEffect } from "react"; -import { useDispatch } from "react-redux"; type SidebarContextType = { isExpanded: boolean; @@ -36,7 +33,6 @@ export const SidebarProvider: React.FC<{ children: React.ReactNode }> = ({ const [isHovered, setIsHovered] = useState(false); const [activeItem, setActiveItem] = useState(null); const [openSubmenu, setOpenSubmenu] = useState(null); - const dispatch = useDispatch(); useEffect(() => { const handleResize = () => { @@ -55,17 +51,6 @@ export const SidebarProvider: React.FC<{ children: React.ReactNode }> = ({ }; }, []); - useEffect(() => { - const fetchUser = async () => { - try { - const userData = await apiGetCurrentUser(); - dispatch(setUserData(userData.data)); - } catch (err) { - console.error("Lỗi:", err); - } - }; - fetchUser(); - }, []) const toggleSidebar = () => { setIsExpanded((prev) => !prev);