Skip to content

Combobox 搜索下拉框

搜索下拉框组件结合了输入框和下拉选择器的功能,支持关键词搜索过滤、键盘导航,适合选项较多需要快速筛选的场景。

基础用法

通过 v-model 绑定选中值,options 传入选项数组。

vue

<TCombobox v-model="value" :options="options" placeholder="搜索..." />

别名搜索

通过 aliases 字段可以为选项设置搜索别名,用户输入中文或俗称也能匹配到对应项。

vue

<TCombobox v-model="value" :options="[
  { value: 'apple', label: 'Apple', aliases: ['苹果'] },
]" />

尺寸与验证

支持 sm 小尺寸、lg 大尺寸,以及 valid/invalid 验证状态。

vue

<TCombobox size="sm" placeholder="小尺寸" />
<TCombobox size="lg" placeholder="大尺寸" />
<TCombobox validation="valid" placeholder="验证通过" />
<TCombobox validation="invalid" placeholder="验证失败" />

前置/后置文本

通过 prepend-textappend-text 在输入框前后添加固定文本。

vue

<TCombobox prepend-text="$" append-text=".00" :options="options" />

API

Props

Prop说明类型默认值
v-model选中的值string''
options选项数组ComboboxOption[][]
placeholder占位符string'搜索...'
disabled禁用booleanfalse
required必填booleanfalse
size尺寸'sm' | 'lg'undefined
validation验证状态'valid' | 'invalid'undefined
block块级(占满父容器宽度)booleanfalse
prependText前置文本stringundefined
appendText后置文本stringundefined

ComboboxOption

字段说明类型默认值
value选项值string—(必填)
label显示文字string—(必填)
aliases搜索别名string[]undefined

Slots

插槽作用域属性说明
option{ option, index, active, highlighted }自定义选项渲染
prepend前置内容(输入组)
append后置内容(输入组)