Mídia
Galleria
Imagens com miniaturas, indicadores, rotação e modo de tela cheia.
Testado com WAI-ARIA
Importação
main.ts
import { Galleria } from '@vitral/vue';Miniaturas
1 de 8
Photograph 1
Transições
Como uma imagem dá lugar à próxima, pelo nome. Os presets são definidos uma vez e compartilhados com o Carousel, e todos param sob prefers-reduced-motion.
1 de 8
Indicadores e rotação
1 de 8
Tela cheia
API
Lido de packages/vue/src/components/Galleria/types.ts, então diz o que o componente aceita de fato.
Props
| Nome | Tipo | Descrição |
|---|---|---|
| value | any[] | — |
| numVisible | number | Miniaturas mostradas de uma vez. O padrão é 3. |
| fullScreen | boolean | Mostra num modal sobre a página, aberto com `v-model:visible`. |
| showThumbnails | boolean | O padrão é true. |
| thumbnailsPosition | 'bottom' | 'top' | 'left' | 'right' | — |
| showItemNavigators | boolean | Botões de anterior e próximo sobre o item. |
| showThumbnailNavigators | boolean | Botões de anterior e próximo ao lado das miniaturas. O padrão é true. |
| showIndicators | boolean | Pontos abaixo do item. |
| circular | boolean | Dá a volta: o último item é seguido pelo primeiro. Ligado por padrão — uma galeria que para de repente no fim faz o leitor voltar por tudo o que acabou de ver para chegar à outra ponta. |
| autoPlay | boolean | Passa pelos itens sozinha; vem com um botão de pausa. |
| transitionInterval | number | Milissegundos entre itens durante a reprodução. O padrão é 4000. |
| transition | TransitionPreset | Como um item dá lugar ao próximo: `'fade'`, `'slide'`, `'push'`, `'cover'`, `'zoom'`, `'flip'`, ou `'none'`, que é o padrão — uma galeria navegada depressa fica melhor trocando na hora. |
| ariaLabel | string | Dá nome à galeria. |
Mais pt, dt e unstyled de BaseProps; veja pass-through e modo sem estilo.
Emits
| Evento | Payload | Descrição |
|---|---|---|
| update:activeIndex | index: number | — |
| update:visible | visible: boolean | — |
Slots
| Nome | Props do slot | Descrição |
|---|---|---|
| item | (props: { item: unknown; index: number }) | — |
| thumbnail | (props: { item: unknown; index: number }) | — |
| caption | (props: { item: unknown; index: number }) | — |
| indicator | (props: { index: number; active: boolean }) | — |
| header | — | — |
| footer | — | — |