Menu
The Menu components provide your users with a list of options on temporary surfaces.
useDropdown API
Import
import { useDropdown } from '@mui/base/useDropdown';
// or
import { useDropdown } from '@mui/base';Parameters
Callback fired when the component requests to be opened or closed.
Type:
(event: React.MouseEvent | React.KeyboardEvent | React.FocusEvent | null, open: boolean) => voidReturn value
useMenu API
Import
import { useMenu } from '@mui/base/useMenu';
// or
import { useMenu } from '@mui/base';Parameters
Return value
Action dispatcher for the menu component. Allows to programmatically control the menu.
Type:
(action: ListAction<string>) => voidResolver for the listbox slot's props.
Type:
<TOther extends EventHandlers>(otherHandlers?: TOther) => UseMenuListboxSlotPropsItems in the menu listbox.
Type:
Map<string, MenuItemMetadata>useMenuButton API
Import
import { useMenuButton } from '@mui/base/useMenuButton';
// or
import { useMenuButton } from '@mui/base';Parameters
Return value
Resolver for the root slot's props.
Type:
(otherHandlers?: EventHandlers) => UseMenuButtonRootSlotPropsuseMenuItem API
Import
import { useMenuItem } from '@mui/base/useMenuItem';
// or
import { useMenuItem } from '@mui/base';Parameters
Return value
Resolver for the root slot's props.
Type:
<TOther extends EventHandlers = {}>(otherHandlers?: TOther) => UseMenuItemRootSlotProps<TOther>