Vitral 0.2
Diversos

Tag

Um rótulo curto para um status ou uma categoria, em todas as severidades, com um botão de remover opcional.

Importação

main.ts
import { Tag } from '@vitral/vue';

Severidades

primarysecondarysuccessinfowarndangerhelpcontrast
<script setup lang="ts">import { Tag } from '@vitral/vue'; const severities = ['primary', 'secondary', 'success', 'info', 'warn', 'danger', 'help', 'contrast'] as const;</script> <template>    <Tag v-for="s in severities" :key="s" :value="s" :severity="s" /></template>

Ícones e formato

NewVerifiedDue todayBlocked
<script setup lang="ts">import { Tag } from '@vitral/vue';</script> <template>    <Tag value="New" icon="star" />    <Tag value="Verified" icon="check" severity="success" rounded />    <Tag value="Due today" icon="clock" severity="warn" rounded />    <Tag value="Blocked" icon="error" severity="danger" /></template>

Removível

Vá com Tab até um botão de remover e pressione Delete.

vuetypescriptdesign-tokensaccessibilitylayout
<script setup lang="ts">import { Tag } from '@vitral/vue';import { ref } from 'vue'; const topics = ref(['vue', 'typescript', 'design-tokens', 'accessibility', 'layout']);</script> <template>    <Tag v-for="t in topics" :key="t" :value="t" severity="secondary" rounded removable @remove="topics = topics.filter((x) => x !== t)" />    <small v-if="!topics.length" style="color: var(--vt-text-muted-color)">All removed.</small></template>

API

Lido de packages/vue/src/components/Tag/types.ts, então diz o que o componente aceita de fato.

Props

NomeTipoDescrição
valuestring | number—
severitySeverityO padrão é `'primary'`.
iconIconProp—
roundedbooleanEm formato de pílula.
removablebooleanAdiciona um botão de remover, chamado "Remove <value>"; pressioná-lo (ou Delete/Backspace nele) emite `remove`.

Mais pt, dt e unstyled de BaseProps; veja pass-through e modo sem estilo.

Emits

EventoPayloadDescrição
removeevent: Event—

Slots

NomeProps do slotDescrição
default—Substitui o texto do valor.
icon——
removeicon——