Skip to content

Menu 菜单

基于 BrConfigProvider 全局主题配置的菜单组件,复刻 shadcn-vue 设计体系,支持多级嵌套、快捷键标注和键盘导航。本组件主要用于实现上下文菜单(Right-click Context Menu)。

核心特性

  • 主题适配:深度集成 BrConfigProvider,支持 CSS 变量配置背景、前景、圆角、阴影等。
  • 多级嵌套:支持无限层级的子菜单嵌套。
  • 键盘导航:完整支持 Tab、Arrow Up/Down/Left/Right、Enter、Esc 等键位操作。
  • 快捷键:支持菜单项快捷键标注。
  • 分组分隔:支持菜单分组和分隔线。
  • 边界检测:自动调整弹出位置,防止溢出视口。

基础用法

最简单的上下文菜单,包含几个基本操作。

Right click here
Example

复杂菜单

支持分组、图标、快捷键和多级嵌套的复杂上下文菜单,效果如图所示。

Right-click in this area (Right click here)
Example

多级嵌套子菜单

支持使用 BrMenuSub 创建多级子菜单。

Right click for Submenu
Example

带快捷键标注

使用 shortcut 插槽或属性展示快捷键。

Right click for Shortcuts
Example

主题定制

BrMenu 基于 BrConfigProvider 的 CSS 变量进行样式定制。

通过 BrConfigProvider 全局配置 Menu 的圆角、背景色、阴影等。

Right click (Dark Theme Menu)
Example

API 参考

BrMenu (Root)

属性类型默认值说明
dir'ltr' | 'rtl'-阅读方向

BrMenuTrigger

属性类型默认值说明
disabledbooleanfalse是否禁用触发器

BrMenuContent

属性类型默认值说明
loopbooleanfalse键盘导航是否循环
alignOffsetnumber-对齐偏移量

BrMenuItem

属性类型默认值说明
disabledbooleanfalse是否禁用
insetbooleanfalse是否留出左侧图标空间
shortcutstring-快捷键文本

BrMenuSub

属性类型默认值说明
defaultOpenbooleanfalse默认是否展开
openboolean-受控展开状态