Merged in fix/SW-1742-navigation-on-mobile (pull request #1436)

fix(SW-1742): fixed issue where mobile menu is not closed when clicking on a link

* fix(SW-1742): fixed issue where mobile menu is not closed when clicking on a link


Approved-by: Fredrik Thorsson
Approved-by: Matilda Landström
This commit is contained in:
Erik Tiekstra
2025-02-27 14:20:47 +00:00
parent 6e9123aca9
commit af7c5853db
6 changed files with 52 additions and 42 deletions

View File

@@ -14,10 +14,12 @@ import MegaMenu from "../MegaMenu"
import styles from "./navigationMenuItem.module.css"
import { DropdownTypeEnum } from "@/types/components/dropdown/dropdown"
import type { NavigationMenuItemProps } from "@/types/components/header/navigationMenuItem"
export default function MenuItem({ item, isMobile }: NavigationMenuItemProps) {
const { openMegaMenu, toggleMegaMenu } = useDropdownStore()
const { openMegaMenu, toggleMegaMenu, toggleDropdown, isHamburgerMenuOpen } =
useDropdownStore()
const megaMenuRef = useRef<HTMLDivElement>(null)
const { submenu, title, link, seeAllLink, card } = item
const megaMenuTitle = `${title}-${isMobile ? "mobile" : "desktop"}`
@@ -33,6 +35,12 @@ export default function MenuItem({ item, isMobile }: NavigationMenuItemProps) {
toggleMegaMenu(false)
})
function handleNavigate() {
if (isHamburgerMenuOpen) {
toggleDropdown(DropdownTypeEnum.HamburgerMenu)
}
}
return submenu.length ? (
<>
<MainMenuButton
@@ -74,6 +82,7 @@ export default function MenuItem({ item, isMobile }: NavigationMenuItemProps) {
className={`${styles.navigationMenuItem} ${isMobile ? styles.mobile : styles.desktop}`}
variant="navigation"
weight="bold"
onClick={handleNavigate}
href={link!.url}
>
{title}