Inline

Set mode="inline" for a sidebar, where each submenu expands in place and pushes the items below it down.

Horizontal

Set mode="horizontal" for a navigation bar across the top of the page, where each submenu opens as a popup below its item.

Vertical

Set mode="vertical" to open each submenu as a popup beside the menu, so the menu keeps its height however deep the tree is.

Dark theme

Set theme="dark" for a dark menu on a light page, like the sidebar of an admin app.

Groups and dividers

Give an item type: "group" to put a heading over its children, or type: "divider" to draw a line between two sections.

Inline collapsed

Set inlineCollapsed on an inline menu to shrink it to its icons, with each submenu opening as a popup to the side.

Controlled selection

Pass selectedKeys and onSelect to decide which item is selected yourself, like when the current route sets it.

Custom expand icon

Pass expandIcon to replace the submenu arrow with your own icon, like a plus that turns into a minus while the submenu is open.

Overflow

A horizontal menu moves the items that do not fit into one trailing submenu, marked with the icon pack's more icon.

No overflow icon

Set overflowedIndicator to null to show the overflow submenu without an icon, or pass a node to use your own.

Actions menu

Set selectable to false for a list of actions, where a click fires onClick and no item stays highlighted.

Multiple selection

Set multiple to keep more than one item selected, like a list of filters where each click turns one on or off.

Accordion submenus

Control openKeys and close the siblings in onOpenChange, so opening a submenu closes the others at its level.
Set theme on a submenu item to give its popup a theme of its own, like a light popup opening from a dark menu.

Switching mode and theme

Change mode and theme from state to switch a menu between inline and vertical, or between light and dark.

Collapsed tooltips

Pass tooltip to configure the label a collapsed menu shows on hover, like { placement: "right" }, or false to turn it off.

Custom popup

Pass popupRender to lay out a submenu's popup yourself, like a two-column product menu with an icon and a description on each item.

In context

The component inside real screens, with the components it usually sits beside.

App sidebar

A collapsible app sidebar with a badge count on the inbox and the signed-in user at the bottom.

API Reference