'use client'; import Link from "next/link"; import { useEffect, useRef, useState } from "react"; import { usePathname } from "next/navigation"; import MainLogoSvg from "./svgs/mainlogosvg"; import ChevronDownSvg from "./svgs/chevrondownsvg"; const NAV_ITEMS = [ { label: "교육 과정 목록", href: "/menu" }, { label: "학습 자료실", href: "/resources" }, { label: "공지사항", href: "/notices" }, ]; export default function NavBar() { const pathname = usePathname(); const [isUserMenuOpen, setIsUserMenuOpen] = useState(false); const userMenuRef = useRef(null); const userButtonRef = useRef(null); useEffect(() => { if (!isUserMenuOpen) return; const onDown = (e: MouseEvent) => { const t = e.target as Node; if ( userMenuRef.current && !userMenuRef.current.contains(t) && userButtonRef.current && !userButtonRef.current.contains(t) ) { setIsUserMenuOpen(false); } }; const onKey = (e: KeyboardEvent) => { if (e.key === "Escape") setIsUserMenuOpen(false); }; document.addEventListener("mousedown", onDown); document.addEventListener("keydown", onKey); return () => { document.removeEventListener("mousedown", onDown); document.removeEventListener("keydown", onKey); }; }, [isUserMenuOpen]); return (
XR LMS
내 강좌실 {isUserMenuOpen && (
setIsUserMenuOpen(false)} > 내 정보 수정
)}
); }