From 022e8a2db830217f1acc83e749d20aff1e4729b7 Mon Sep 17 00:00:00 2001 From: Koushik Date: Wed, 11 Oct 2023 15:55:20 +0530 Subject: [PATCH] fix: fixes the issue regarding mobile navigation does not close on click --- components/main-nav.tsx | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/components/main-nav.tsx b/components/main-nav.tsx index b5cdb52..fe428b1 100644 --- a/components/main-nav.tsx +++ b/components/main-nav.tsx @@ -19,6 +19,24 @@ export function MainNav({ items, children }: MainNavProps) { const segment = useSelectedLayoutSegment() const [showMobileMenu, setShowMobileMenu] = React.useState(false) + const toggleMobileMenu = () => { + setShowMobileMenu(!showMobileMenu) + } + + React.useEffect(() => { + const closeMobileMenuOnClickOutside = (event: MouseEvent) => { + if (showMobileMenu) { + setShowMobileMenu(false) + } + } + + document.addEventListener("click", closeMobileMenuOnClickOutside) + + return () => { + document.removeEventListener("click", closeMobileMenuOnClickOutside) + } + }, [showMobileMenu]) + return (
@@ -48,7 +66,7 @@ export function MainNav({ items, children }: MainNavProps) { ) : null}