Skip to content

DropdownMenu 下拉菜单

此组件目前仅针对 SuggestionPills 组件开发,可配置项暂不全面

代码示例

基本示例

loading

API

Props

下拉菜单属性配置。

属性类型默认值说明
appendTostring | HTMLElement-指定下拉菜单挂载的容器元素或选择器
itemsDropdownMenuItem[]-必填,菜单项数据数组
showboolean-控制菜单显示状态:
click/hover 模式:双向绑定(v-model:show)
manual 模式:单向绑定
trigger'click' | 'hover' | 'manual''click'菜单触发方式:
click - 点击触发
hover - 悬停触发
manual - 手动控制

属性详细说明

  1. show 属性行为

    • trigger'click''hover' 时:
      • 可作为双向绑定属性使用 (v-model:show)
      • 组件内外均可修改显示状态
    • trigger'manual' 时:
      • 仅作为单向属性使用
      • 组件内部不会自动修改此值
  2. trigger 模式区别

    • click:点击触发元素显示/隐藏菜单
    • hover:鼠标悬停触发元素显示菜单,移出后隐藏
    • manual:完全通过外部控制的显示状态

Slots

下拉菜单插槽定义。

插槽名类型说明
trigger() => VNode | VNode[]自定义触发元素插槽

Events

下拉菜单事件定义。

事件名参数说明
item-clickitem: DropdownMenuItem点击菜单项时触发
click-outsideevent: MouseEvent点击菜单外部区域时触发(仅在 trigger'click''manual' 时有效)

Types

菜单项数据结构。

属性类型说明
idstring菜单项唯一标识
textstring菜单项显示文本

CSS Variables

变量名说明默认值
--tr-dropdown-menu-bg-color下拉菜单背景色#ffffff
--tr-dropdown-menu-box-shadow下拉菜单阴影0 0 20px rgba(0, 0, 0, 0.08)
--tr-dropdown-menu-min-width下拉菜单最小宽度130px
--tr-dropdown-menu-item-color菜单项文字颜色rgb(25, 25, 25)
--tr-dropdown-menu-item-hover-bg-color菜单项悬停时背景色#f5f5f5
--tr-dropdown-menu-item-font-weight菜单项字体粗细normal
--tr-dropdown-menu-min-top下拉菜单最小 top0px
--tr-dropdown-menu-max-bottom下拉菜单最大 bottom100%
--tr-dropdown-menu-min-left下拉菜单最小 left0px
--tr-dropdown-menu-max-right下拉菜单最大 right100%