Formulário
TreeSelect
Um select sobre uma árvore, com o mesmo filtro e a mesma seleção por checkbox da Tree.
Testado com WAI-ARIA
Importação
main.ts
import { TreeSelect } from '@vitral/vue';Básico
Value: null
Checkboxes e chips
Filtro e múltipla
Tamanhos e estados
API
Lido de packages/vue/src/components/TreeSelect/types.ts, então diz o que o componente aceita de fato.
Props
| Nome | Tipo | Descrição |
|---|---|---|
| options | TreeNodeLike[] | A árvore de onde escolher. |
| selectionMode | 'single' | 'multiple' | 'checkbox' | `'single'` (o padrão) fecha ao escolher; `'multiple'` e `'checkbox'` ficam abertos. |
| placeholder | string | — |
| display | 'comma' | 'chip' | Como a escolha é mostrada: uma lista separada por vírgulas (o padrão) ou chips. |
| maxSelectedLabels | number | Acima desse número, o campo diz quantos foram escolhidos em vez de nomeá-los. |
| selectedItemsLabel | string | O que ele diz nesse caso. `{count}`; o padrão é a mensagem de seleção do locale. |
| filter | boolean | Adiciona uma caixa de busca acima da árvore. |
| filterBy | string | string[] | Campos do nó a buscar, como lista ou separados por vírgula. O padrão é `label`. |
| filterPlaceholder | string | — |
| emptyMessage | string | — |
| showClear | boolean | — |
| loading | boolean | — |
| disabled | boolean | — |
| invalid | boolean | — |
| size | Size | — |
| variant | InputVariant | — |
| fluid | boolean | — |
| placement | OverlayPlacement | — |
| appendTo | string | `'body'` (o padrão), `'self'` para renderizar no lugar, ou um seletor. |
Mais pt, dt e unstyled de BaseProps; veja pass-through e modo sem estilo.
Emits
| Evento | Payload | Descrição |
|---|---|---|
| change | value: TreeSelectValue | — |
| node-select | node: TreeNodeLike | — |
| node-unselect | node: TreeNodeLike | — |
| node-expand | node: TreeNodeLike | — |
| node-collapse | node: TreeNodeLike | — |
| filter | query: string | — |
| show | — | — |
| hide | — | — |
| focus | event: FocusEvent | — |
| blur | event: FocusEvent | — |
Slots
| Nome | Props do slot | Descrição |
|---|---|---|
| value | (props: { value: TreeNodeLike[]; placeholder?: string }) | O conteúdo do campo. |
| option | (props: { node: TreeNodeLike; expanded: boolean; selected: boolean; checked: boolean }) | O conteúdo de um nó na árvore. |
| header | — | — |
| footer | — | — |
| empty | — | — |
| dropdownicon | (props: { open: boolean }) | — |