Feedback

ProgressBar

Barra di avanzamento per mostrare il progresso di un'operazione. Supporta modalità determinate e indeterminate, striped, animated e severity colorata.

Import

import { ProgressBar } from '@pzeta/vue-components'
// oppure tramite plugin:
import { FeedbackPlugin } from '@pzeta/vue-components'
app.use(FeedbackPlugin)

Esempio Base

Props

PropTipoDefaultDescrizione
valuenumber0Valore corrente (0-max)
maxnumber100Valore massimo
mode'determinate' | 'indeterminate''determinate'Modalità della barra
severity'primary' | 'secondary' | 'success' | 'info' | 'warn' | 'danger' | 'contrast' | 'help''primary'Colore della barra di riempimento
size'small' | 'medium' | 'large' | 'xlarge''medium'Altezza della barra
labelstring | nullnullEtichetta mostrata sopra la barra
helperTextstring | nullnullTesto di aiuto mostrato sotto la barra
showValuebooleanfalseMostra il valore percentuale
valueInsidebooleanfalseMostra il valore all'interno della barra (richiede showValue: true)
unitstring'%'Unità visualizzata accanto al valore
roundedbooleantrueBordi arrotondati
stripedbooleanfalsePattern a strisce
animatedbooleanfalseAnima le strisce (richiede striped: true)
heightstring | nullnullAltezza custom CSS (es. '8px'), sovrascrive size

Slot

SlotScopeDescrizione
content{ value: number, percentage: number }Custom per il testo del valore (usato sia fuori che dentro la barra)

Esempi

Con label e valore

Valore dentro la barra

Severity e aspetto

Valore personalizzato via slot

Caricamento indeterminate

Accessibilità

  • Il contenitore ha role="progressbar".
  • In modalità indeterminate, il valore visualizzato è una stringa localizzata ("Caricamento...").
  • Per screen reader, aggiungere aria-label al wrapper se label non è visibile.

TypeScript

import type { ProgressBarProps } from '@pzeta/vue-components'
import type { ProgressBarMode, ProgressBarSize } from '@pzeta/vue-components'

// ProgressBarMode = 'determinate' | 'indeterminate'
// ProgressBarSize = 'small' | 'medium' | 'large' | 'xlarge'