Grouped Items
Use ItemGroup and ItemGroupLabel to organize menu items into logical sections.
Context Menu
Use ContextTrigger instead of Trigger to open the menu on right-click.
Nested Menu
Use the TriggerItem component to create nested menus within a parent menu.
Option Items
Use OptionItem to create menu items that can be toggled on or off with checkbox or radio group like behavior.
Anatomy
Here’s an overview of how the Menu component is structured in code:
import { Menu } from '@skeletonlabs/skeleton-react';
export default function Anatomy() {
return (
<Menu>
<Menu.Trigger>
<Menu.Indicator />
</Menu.Trigger>
<Menu.ContextTrigger>
<Menu.Indicator />
</Menu.ContextTrigger>
<Menu.Positioner>
<Menu.Content>
<Menu.ItemGroup>
<Menu.ItemGroupLabel />
<Menu.Item>
<Menu.ItemIndicator />
<Menu.ItemText />
</Menu.Item>
<Menu.OptionItem>
<Menu.ItemIndicator />
<Menu.ItemText />
</Menu.OptionItem>
<Menu.TriggerItem>
<Menu.ItemIndicator />
<Menu.ItemText />
</Menu.TriggerItem>
</Menu.ItemGroup>
<Menu.Separator />
<Menu.Arrow>
<Menu.ArrowTip />
</Menu.Arrow>
</Menu.Content>
</Menu.Positioner>
</Menu>
);
}<script lang="ts">
import { Menu } from '@skeletonlabs/skeleton-svelte';
</script>
<Menu>
<Menu.Trigger>
<Menu.Indicator />
</Menu.Trigger>
<Menu.ContextTrigger>
<Menu.Indicator />
</Menu.ContextTrigger>
<Menu.Positioner>
<Menu.Content>
<Menu.ItemGroup>
<Menu.ItemGroupLabel />
<Menu.Item>
<Menu.ItemIndicator />
<Menu.ItemText />
</Menu.Item>
<Menu.OptionItem>
<Menu.ItemIndicator />
<Menu.ItemText />
</Menu.OptionItem>
<Menu.TriggerItem>
<Menu.ItemIndicator />
<Menu.ItemText />
</Menu.TriggerItem>
</Menu.ItemGroup>
<Menu.Separator />
<Menu.Arrow>
<Menu.ArrowTip />
</Menu.Arrow>
</Menu.Content>
</Menu.Positioner>
</Menu>API Reference
Unable to load component information for react/menu
Unable to load component information for svelte/menu