Gå til hovedinnhold
KOMPONENTER

Side navigation

npmv4.1.1

Side navigation brukes som en global meny for å vise et navigasjons-hierarki med ett til to nivåer.

Komponenter

SideNavigation

NavnTypePåkrevd?Default-verdiBeskrivelse
classNamestring

Ekstra klassenavn

size"small" | "medium" medium

Størrelse på menyen

<SideNavigation /> beskriver en meny, både på øverste nivå, eller som barn av et <SideNavigationItem />. De kan være store eller små, og brukes inni en <SideNavigationGroup /> eller som en standalone meny.

SideNavigationItem

NavnTypePåkrevd?Default-verdiBeskrivelse
activeboolean false

Om meny-elementet er det som er aktivt

as("symbol" & ElementType<any>) | ("object" & ElementType<any>) | ("big" & ElementType<any>) | ("link" & ElementType<any>) | ... 173 more ...

HTML-elementet eller React-komponenten som rendres

classNamestring

Ekstra klassenavn

disabledboolean

Om meny-elementet er deaktivert

onClick((e: MouseEvent<Element, MouseEvent>) => any)

Callback for når man klikker på meny-elementet

forceExpandSubMenusboolean

Sett til true om du vil tvinge alle sub-menus til å rendre barna sine. Typisk for å vise søkeresultater

iconReactNode

<SideNavigationItem /> er et menypunkt, og er typisk en lenke. De kan inneholde en label, eller en sub-meny.

SideNavigationGroup

NavnTypePåkrevd?Default-verdiBeskrivelse
defaultOpenboolean false

Skal menygruppen være ekspandert by default? Kun relevant om komponenten ikke er kontrollert

openboolean

Er menyen åpen?

onToggle((e?: boolean ) => void)

Kalles når menygruppen åpnes eller lukkes

classNamestring

Ekstra klassenavn

childrenReactNode

Menyen som skal grupperes

titleReactNode

Overskriften til menyen

iconReactNode

<SideNavigationGroup /> brukes til å gruppere deler av menyen sammen.

CollapsibleSideNavigation

NavnTypePåkrevd?Default-verdiBeskrivelse
classNamestring

Ekstra klassenavn

size"small" | "medium" 'medium'

Størrelse på menyen

collapsedboolean false

Tilstand til menyen

onCollapseToggle((e: any) => void)

Kalles når menyen åpnes eller lukkes

collapsibleButtonPositionstring 50%

Posisjonen til Collapsible-knappen, målt fra toppen (som CSS-enhet)

Variasjoner

Meny med ikoner

Compact side navigation

Compact side navigation med ikoner

Gruppert meny

Gruppert kompakt meny

Collapsible side nagivation

Bruk collapisibleButtonPosition for plasseringen av collapse-knappen ift toppen av sidemenyen. Eksempel 2rem, 25% og lignende.

Obs: Husk og inkluder icon-propen for alle menypunktene.

Retningslinjer for bruk

Side navigation er anbefalt å brukes hvis applikasjonen krever en global navigasjon, og inneholder mer enn fem sider. Navigasjonsmønsteret støtter opptil to nivåer av navigasjon (Nivå 1 og Nivå 2), men det er ikke nødvendig for hvert navigasjonselement å ha samme antall navigasjonsnivåer. Ytterligere et nivå over dette kan legges til ved å benytte Top navigation i tillegg. Konvensjonen for denne typen menystruktur er å vise den på venstre side. Hvis du har færre en 3 menypunkter i navigasjonen, vurder heller å bruk en Top navigation.

Variasjoner

Side navigation komponenten finnes både med og uten ikon. Ikoner på et MenuItem skal kun benyttes på nivå 1. Komponenten er tilgjengelig i normal og kompakt versjon. Den kompakte versjonen er utviklet for å tilby enkel oversikt og unngå overdreven scrolling hos våre proffbrukere, nå som mange av Enturs applikasjoner har fått mer innhold.

Noen applikasjoner kan trenge en mer avansert menystruktur. I de tilfellene kan man bruke MenuGroups til å gruppere menyvalg sammen. Idéen med disse er å kunne tilby en logisk strukturering og forenkle navigasjon i et ellers uoversiktlig innhold. Menygruppene kan kollapses, men man kan selv velge om alle (eller noen av dem) skal være åpne til å begynne med. Hver menygruppe skal helst kun ha ett nivå under seg; unngå nøstede undermenyer i menygruppen.

Inaktive elementer

Om man ønsker å synliggjøre at en lenke finnes, men er utilgjengelig av en eller annen grunn, kan man gjøre et menyelement "disabled". Dette er noe man helst ikke skal gjøre, siden det ikke er noen god måte å fortelle brukeren hvorfor elementet ikke er tilgjengelig for dem. Vurder heller å fjerne elementet fra listen.

Rediger denne siden på Bitbucket