Раскрывающийся список используется как управляемый компонент со свойством v-model
вместе с коллекцией параметров. Метка и значение опции определяются свойствами optionLabel
и optionValue
соответственно. Обратите внимание: когда параметры представляют собой простые примитивные значения, такие как массив строк, никакие optionLabel
и optionValue
не требуются.
Сообщение пустого списка указывается через пропс emptyMessage
value:
value:
value:
value:
value:
value:
Альтернативный способ выделить выбранную опцию — отобразить галочку с помощью свойства checkmark
.
value:
Если присутствует editable
, то можно ввести значение
value:
Опции можно группировать, если предусмотрены вложенные структуры данных. Чтобы определить метку группы, необходимо свойство optionGroupLabel
, а также optionGroupChildren
, чтобы определить свойство, которое относится к дочерним элементам группы.
value:
Параметры и отображение выбранных параметров поддерживают расширение базового шаблона через <template #option>
и <template #value>
.
value:
Раскрывающийся список предоставляет встроенную фильтрацию, которая включается путем добавления свойства filter
.
value:
Когда пропс showClear="true"
, появится кнопка для сброса значения
value: null
value:
value:
value:
<script lang="ts" setup>
// non-reactive
const cityLst = [
{ text: 'New York', value: 'NY' },
{ text: 'Rome', value: 'RM' },
{ text: 'London', value: 'LDN' },
{ text: 'Istanbul', value: 'IST' },
{ text: 'Paris', value: 'PRS' }
];
// end non-reactive
const value = ref();
</script>
<template>
<div class="row justify-content-center">
<div class="col-4">
<BDropdown
v-model="value"
class="mb-3"
option-label="text"
placeholder="Наверх"
position="top"
option-value="value"
:options="cityLst"
show-clear
/>
<pre class="mb-0">value: {{ value }}</pre>
</div>
<div class="col-4">
<BDropdown
v-model="value"
class="mb-3"
option-label="text"
placeholder="Авто"
position="auto"
option-value="value"
:options="cityLst"
show-clear
/>
<pre class="mb-0">value: {{ value }}</pre>
</div>
<div class="col-4">
<BDropdown
v-model="value"
class="mb-3"
option-label="text"
placeholder="Вниз"
position="bottom"
option-value="value"
:options="cityLst"
show-clear
/>
<pre class="mb-0">value: {{ value }}</pre>
</div>
</div>
</template>
Когда пропс disabled="true"
, элемент нельзя редактировать и установить фокус.