Menu

An arrow-key navigable Menu which consists of MenuItems. A Menu can be employed to produce its common variants, including dropdown menus, select menus, and others. Menus are keyboard navigable with both tab and arrow keys.

A MenuItem is its own distinct component that is used by any kind of menu overlays i.e. dropdown menu and navigation menu.

A Menu can include things like forms.

A Menu can be implemented to appear inside a modalpopup for a wide variety of use cases. The Modal brings focus to the first menu element upon the click of the trigger, and can be escaped on click away or key press.

Menu Props API
  • className string Required

    Specifies class name to append to the base element

  • arrowKeyNavigationSelector string Required

    Specifies the CSS selector string that indicates to which elements the user can navigate using the arrow keys

    Default'a:not(:disabled),button:not(:disabled),input:not(:disabled)'
  • as elementType Required

    Specifies the base element

    Default'div'
  • children node Required

    Specifies the content of the menu

    Defaultnull
MenuItem Props API
  • defaultSelected bool Required

    Specifies that this MenuItem is selected inside the SelectMenu

    Defaultfalse
  • className string Required

    Specifies class name to append to the base element

  • children node Required

    Specifies the content of the MenuItem

    Defaultnull
  • as elementType Required

    Specifies the base element

    Default'button'
  • iconBefore element Required | func Required Required

    Specifies the jsx before the content of the MenuItem

  • iconAfter element Required | func Required Required

    Specifies the jsx after the content of the MenuItem

Contents