Combobox
Text input with an adjoining button and an expandable menu of items.
TextInput props apply
This component contains a TextInput component. You can bind TextInput props to this component and they will be passed to the TextInput within.
Attributes passed to input
This component will pass any HTML attributes applied to it, except for CSS class, to the <input>
element within the component.
Demos
Basic Usage
The Combobox component combines a menu of selectable items with a text box that can accept arbitrary input from the user. The component should receive a v-model:selected
binding from its parent as well as an array of menu items (which can be empty).
Selected value:
Clearable, with start icon
Valid TextInput props like startIcon
, endIcon
, and clearable
will be passed on to the embedded TextInput
.
Selected value:
With menu item icons and descriptions
Items are displayed via the MenuItem component—see the MenuItem docs for more options. In this example, a menuConfig
object is passed to the Combobox to bold the label text and hide the text overflow of the descriptions.
With custom menu item display
Like other menu-style components (Select
, Lookup
, etc.), a custom template can be provided via the #menu-item
slot. In this example, only the menu item's icon is displayed in the menu.
With "no results" content
A non-interactive "no results" message can be displayed via the no-results
slot. If populated, this slot will automatically display when there are zero menu items.
Disabled
Usage
Props
Prop name | Description | Type | Default |
---|---|---|---|
menuItems (required) | Menu items. See the MenuItemData type. | MenuItemData[] | |
selected (required) | Value of the current selection. Must be bound with v-model:selected . | string|number | |
disabled | Whether the dropdown is disabled. | boolean | false |
menuConfig | Configuration for various menu features. All properties default to false. See the MenuConfig type. | MenuConfig | () => { return {} as MenuConfig; } |
Events
Event name | Properties | Description |
---|---|---|
update:selected | selected string | number - The new selected value | When the selected value changes. |
Slots
Name | Description | Bindings |
---|---|---|
menu-item | Display of an individual item in the menu | |
no-results | Message to show if there are no menu items to display. |