Skip to content

ContextMenu 右键菜单 ​

AuContextMenu 只负责菜单展示与交互,业务确认通过 beforeSelect 注入。

基础用法 ​

在这里点击右键菜单坐标来自鼠标事件,并自动限制在浏览器视口内

Section 类型 ​

type使用字段说明
button / itemitem,也兼容直接写在 section 上单个菜单项
button-group / groupitems纵向普通菜单项组
icon-rowitems单行图标按钮
icon-griditems图标网格
submenuid、label、items二级菜单;内部 item 可用 kind: 'separator'
separator—分隔线
字段说明类型
id业务动作标识,建议必填且唯一string / number
label展示文本及图标按钮提示string
title原生 title,主要用于普通菜单项string
icon图标组件Component
shortcut右侧快捷键提示,仅展示、不监听键盘string
danger是否使用危险色boolean
disabled是否禁用boolean
kind / type子菜单分隔项可设为 separatorstring
其他字段原样保留并随事件返回,例如 confirmMessageunknown

ContextMenu API ​

Attributes ​

属性说明类型默认值
modelValue / v-model是否显示菜单booleantrue
items菜单 Section 数据AuContextMenuSection[][]
position视口坐标
iconColor图标行统一颜色string''
beforeSelect选择前守卫;返回 false 取消动作(item) => boolean | Promise<boolean>—
hideOnSelect成功选择后是否关闭booleantrue
closeOnClickOutside点击外部是否关闭booleantrue
teleported是否传送到 appendTobooleantrue
appendToTeleport 目标string / HTMLElementbody
zIndex菜单层级number2200

Events ​

事件名说明参数
update:modelValue内部关闭时更新绑定值(visible: boolean)
select守卫通过后触发(item: AuContextMenuItem)
actionselect 的兼容事件,参数相同(item: AuContextMenuItem)
cancelbeforeSelect 返回 false 时触发(item: AuContextMenuItem)
close菜单关闭时触发(reason: string)

Exposes ​

属性或方法说明
close(reason?)主动关闭菜单
updatePosition()根据最新坐标和菜单尺寸执行视口避让
menuRef菜单根元素引用

Aurora Plus · Vue 3 Component Library