Dados
Listbox
Uma lista para escolher uma ou várias opções, sempre aberta: a irmã do Select.
Testado com WAI-ARIA
Importação
main.ts
import { Listbox } from '@vitral/vue';Única
A seleção acompanha as setas, como num list box nativo. Évora está desabilitada.
- São Paulo
- Rio de Janeiro
- Lisboa
- Porto
- Évora
- Montréal
- Bogotá
- Kraków
- Reykjavík
- Zürich
- Tōkyō
- Málaga
Múltipla, com filtro
A busca ignora acentos e maiúsculas: “ingles” não é necessário, “espanol” encontra Español.
- Português
- English
- Español
- Français
- Deutsch
- Íslenska
- Polski
- 日本語 (Japanese)
- Wolof
- Euskara
Grupos e opções personalizadas
- Brasil
- São Paulo
- Recife
- Florianópolis
- Portugal
- Lisboa
- Coimbra
- Canada
- Montréal
- Québec
- Online
- Away
- Busy
- Offline
Estados
- São Paulo
- Rio de Janeiro
- Lisboa
- Porto
- São Paulo
- Rio de Janeiro
- Lisboa
- Porto
API
Lido de packages/vue/src/components/Listbox/types.ts, então diz o que o componente aceita de fato.
Props
| Nome | Tipo | Descrição |
|---|---|---|
| options | any[] | — |
| optionLabel | string | Campo (caminho com pontos) com o texto de uma opção. Sem ele, as opções são mostradas como estão. |
| optionValue | string | Campo com o valor que o v-model recebe. Sem ele, a opção inteira é o valor. |
| optionDisabled | string | — |
| optionGroupLabel | string | Transforma `options` em grupos: este campo é o rótulo de cada grupo… |
| optionGroupChildren | string | …e este, as suas opções. O padrão é `items`. |
| dataKey | string | Compara valores de objeto por este campo em vez de pela estrutura. |
| multiple | boolean | O v-model passa a ser um array, e a lista aceita seleção múltipla. |
| checkmark | boolean | Marca as opções selecionadas com um visto, além do destaque. |
| filter | boolean | Adiciona uma caixa de busca acima da lista. |
| filterPlaceholder | string | — |
| filterFields | string[] | Campos a buscar em vez do rótulo. |
| filterMatchMode | string | Qualquer modo de comparação registrado; por padrão, `contains` sem distinguir acentos nem maiúsculas. |
| scrollHeight | string | A altura máxima da lista antes de rolar. |
| emptyMessage | string | — |
| emptyFilterMessage | string | — |
| selectOnFocus | boolean | No modo simples, mover com as setas também seleciona, como numa list box nativa. Desligado, as setas só movem e Enter ou Espaço selecionam. |
| invalid | boolean | — |
| disabled | boolean | — |
| fluid | boolean | — |
Mais pt, dt e unstyled de BaseProps; veja pass-through e modo sem estilo.
Emits
| Evento | Payload | Descrição |
|---|---|---|
| change | event: ListboxChangeEvent | — |
| filter | query: string | — |
| focus | event: FocusEvent | — |
| blur | event: FocusEvent | — |
Slots
| Nome | Props do slot | Descrição |
|---|---|---|
| option | (props: { option: unknown; index: number; selected: boolean; focused: boolean }) | — |
| optiongroup | (props: { group: unknown }) | — |
| header | — | — |
| footer | — | — |
| empty | — | — |