# Dropdown 下拉框

提示

该组件与 @lateinos/awesome-ui 中的 H3Dropdown 有较大的变化,具体变化在把选择显示框提取出来,成为一个单独的 H3ComboBox 组件,同时移除了挂载在 H3Dropdown 上的 SingleItem,MultipleItem 组件,将其统一合并成 H3ComboOpitons 组件,同时挂载到 H3ComboBox.Opitons

# 引入

import { H3Dropdown } from '@lateinos/awesome-ui';

export default {
  components: {
    H3Dropdown,
  },
};

# 示例

# 基本下拉框

# 自定义触发区域

# 带箭头

# 复用

建议

更多使用场景及技巧可参考H3ComboBoxH3Dropdown结合使用的示例

# API

# Prop

参数 说明 类型 默认值
visible 手动控制是否隐藏及显示,请与event:toggleevent:show event:hide 联动使用 boolean false
placement 下拉框位置/^(auto|top|bottom|left|right)(-start|-end)?$/ string 'bottom-start'
sameWidth 下拉框是否和组合框一样宽 boolean false
autoHide 当触发区域不在可视区域时, 弹窗是否自动隐藏 boolean true
arrow 是否显示箭头,箭头始终指向参考点的中心,一旦不再指向参考点,它就会移开,popper的实现 (opens new window) boolean false
trigger 触发弹窗弹出的元素 Element | Function -
control 是否禁用自动隐藏,若设置true点击弹窗外面不会自动隐藏,请通过visible控制 boolean false
controlCls 若弹窗中会出现弹窗,而不想点击次级弹窗时关闭弹窗则可以添加该prop,来控制有该class的元素及其子元素点击不会关闭 string | string[] -
overlayCls 自定义下拉框类名 string -
offset reference 的[偏移, 间距] Array | Function => [] -
zIndex 自定义 z-index string | number -
subTrigger 是否由prop:trigger元素的子元素触发,一般用于项数过多换行,点击空白触发弹窗, 或者是函数 (triggerEl, evtTarget): boolean boolean|function false
appendToBody 是否将下拉框移动到body上,优先级低于getParentContainer boolean true
getParentContainer 将下拉框移动到某个指定DOM元素上,优先级高于appendToBody函数必须返回一个DOM元素 Function -
getBoundaryContainer 将下拉框限制在某个指定DOM元素范围内显示,函数必须返回一个DOM元素 Function -

# Event

事件名称 说明 回调参数
toggle 下拉框显示隐藏切换时触发 visible: boolean
show 下拉框显示时触发 -
hide 下拉框隐藏时触发 -
contentFocus 下拉框鼠标移入时触发 -
contentBlur 下拉框鼠标移出时触发 -

# Function

  • 实例方法
方法名 说明 参数
forcePopupAlign 在显示区域大小有变化时可调用,重新校正下拉框的位置, 可以控制以当前朝向校正 currPlacement: boolean
popperToggle 函数式切换隐藏或显示 (reference: 要相对的元素 若传入null则隐藏, listeners: {show: () => {} 显示前回调, afterHide: () => {} 隐藏后回调})

# Slots

插槽名 说明 SlotProps
default 触发下拉框区域插槽 -
content 下拉框区域插槽 -