Components

Valuta

Riferimento API per il componente <Currency>

Panoramica

Il componente <Currency> visualizza un valore numerico come valuta. Il numero viene formattato in base alle impostazioni locali correnti e a eventuali parametri opzionali forniti. Il componente currency si occupa esclusivamente della formattazione e non esegue alcun calcolo dei tassi di cambio.

<Currency>{100}</Currency>
// Output: $100,00

Tutta la formattazione è gestita localmente tramite la libreria Intl.NumberFormat.

Riferimenti

Props

Prop

Type

Descrizione

PropDescrizione
childrenIl contenuto da visualizzare all'interno del componente. In genere un numero che rappresenta il valore da formattare come valuta. Se presente, ha priorità sulla prop value.
nameNome facoltativo per il campo valuta, usato a fini di metadati.
valueIl valore predefinito della valuta. Se non fornito, verrà utilizzato children. Può essere una stringa o un numero. Le stringhe vengono analizzate e convertite in numeri prima della formattazione.
currencyIl tipo di valuta, ad esempio "USD" o "EUR". Determina il simbolo e la formattazione utilizzati per la valuta.
optionsOpzioni facoltative di formattazione della valuta, secondo la specifica Intl.NumberFormatOptions. Usale per definire impostazioni come il numero massimo di cifre decimali, il raggruppamento, ecc.
localesLocale facoltativo per specificare la lingua/area della formattazione. Se non fornito, viene usato il locale predefinito dell’utente. Ulteriori dettagli su come specificare i locale qui.

Restituisce

JSX.Element che contiene la valuta formattata come stringa.


Esempi

Esempio base

Il componente <Currency> può essere usato per visualizzare valori di valuta localizzati.

PriceDisplay.jsx
import { Currency } from 'gt-next';

export default function PriceDisplay(item) {
  return (
    <Currency> {item.price} </Currency>
  );
}

Specificare la valuta

Qui mostriamo il prezzo in euro.

PriceDisplay.jsx
import { Currency } from 'gt-next';

export default function PriceDisplay(item) {
  return (
    <Currency currency="EUR"> {item.price} </Currency> 
  );
}

Tradurre i componenti <Currency>

Poniamo che tu voglia mostrare la valuta all'interno di una frase che viene anch’essa tradotta. Puoi avvolgere il componente <Currency> in un componente <T>.

PriceDisplay.jsx
import { T, Currency } from 'gt-next';

export default function PriceDisplay(item) {
  return (
    <T id="itemPrice">
      Il prezzo è <Currency> {item.price} </Currency>.
    </T> 
  );
}

Formattazione personalizzata

Qui visualizziamo un prezzo in GBP che definisce con precisione il numero di cifre decimali e utilizza il simbolo “narrow” della valuta (cioè “$100” invece di “US$100”). Approfondisci le opzioni disponibili in Intl.NumberFormatOptions.

PriceDisplay.jsx
import { Currency } from 'gt-next';

export default function PriceDisplay(item) {
  return (
    <Currency
      currency="GBP"
      options={{ 
        currencyDisplay: 'narrowSymbol', 
        minimumFractionDigits: 2, 
        maximumFractionDigits: 2, 
      }} 
    >
      {item.price}
    </Currency>
  );
}

Note

  • Il componente <Currency> formatta i valori in valuta in base alla lingua/locale corrente e a eventuali parametri opzionali forniti.
  • Il componente gestisce solo la formattazione e non esegue alcun calcolo dei tassi di cambio.
  • I contenuti del componente <Currency> non vengono inviati all'API per la traduzione. Tutta la riformattazione viene eseguita localmente usando la libreria Intl.NumberFormat.

Prossimi passaggi

  • Per ulteriori dettagli ed esempi d’uso del componente <Currency> e di altri componenti di variabile come <Num>, <DateTime> e <Var>,

Come valuti questa guida?

Valuta