# react-native: msg
URL: https://generaltranslation.com/it/docs/react-native/api/strings/msg.mdx
---
title: msg
description: Riferimento API per la funzione msg() per le stringhe
---
{/* GENERATO AUTOMATICAMENTE: non modificare direttamente. Modifica il modello in content/docs-templates/. */}
## Panoramica
La funzione `msg` contrassegna e codifica le stringhe da tradurre.
```jsx
const encodedString = msg('Hello, world!');
```
La stringa codificata deve essere passata all'hook [`useMessages`](/docs/react-native/api/strings/use-messages) per recuperare le traduzioni.
**Codifica:**
`msg` codifica la stringa di input, quindi non puoi usarla direttamente in JSX o altrove.
Se vuoi ottenere di nuovo la stringa originale, devi decodificarla con [`decodeMsg`](#decodemsg)
## Decodifica [#decodemsg]
Per recuperare la stringa originale, devi decodificarla con [`decodeMsg`](#decodemsg)
```jsx
import { msg, decodeMsg } from 'gt-react-native';
const encodedString = msg('Hello, world!');
const decodedString = decodeMsg(encodedString);
console.log(decodedString); // "Hello, world!"
```
## Riferimento
### Parametri
| Nome | Tipo | Descrizione |
| ---------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
| `content` | `string` | Il contenuto della stringa da codificare. |
| `options?` | [`InlineTranslationOptions`](/docs/react-native/api/types/inline-translation-options) | Opzioni di traduzione per personalizzare il comportamento di `msg`. |
### Restituisce
Una stringa codificata, in cui le variabili interpolate (se presenti) vengono sostituite con i rispettivi valori.
***
## Funzionamento
### Produzione
Durante il processo di CD, qualsiasi contenuto all'interno di una funzione `msg` viene tradotto prima del deployment dell'applicazione.
Questo garantisce tempi di caricamento rapidi per tutte le impostazioni regionali, ma può tradurre solo il contenuto noto in fase di build.
Una volta generate, le traduzioni vengono (1) archiviate nella CDN oppure (2) incluse nell'output di build della tua app, in base alla configurazione.
Da lì, il contenuto tradotto viene servito agli utenti.
Se una traduzione non viene trovata, verrà usato come fallback il contenuto originale.
Assicurati di seguire la [guida al deployment qui](/docs/react-native/tutorials/quickdeploy).
### Sviluppo
Durante lo sviluppo, la funzione `msg` traduce i contenuti su richiesta.
Questo è utile per farsi un'idea di come apparirà la tua app in lingue diverse.
Ricorda di aggiungere una chiave API Dev al tuo ambiente per abilitare questo comportamento.
Durante la traduzione su richiesta in fase di sviluppo noterai un ritardo.
Questo non accadrà nelle build di produzione, a meno che i contenuti non vengano tradotti esplicitamente su richiesta.
***
## Esempio
### Utilizzo di base
Puoi usare `msg` per contrassegnare le stringhe da tradurre.
```jsx copy
import { msg, useMessages } from 'gt-react-native';
const encodedString = msg('Hello, world!');
export default function TranslateGreeting() {
const m = useMessages();
return (
{m(encodedString)}
);
}
```
Nota: "Hello, world!" verrà tradotto nella lingua preferita dell'utente.
### Utilizzo delle variabili [#variables]
Puoi passare variabili alle traduzioni del dizionario.
```jsx copy
import { msg, useMessages } from 'gt-react-native';
const encodedString = msg('Hello, {name}!', { name: 'Alice' });
export default function TranslateGreeting() {
const m = useMessages();
return (
{m(encodedString)}
);
}
```
Nota: "Alice" non verrà tradotto nella lingua preferita dell'utente perché è una variabile.
### Utilizzo del formato messaggi ICU
`gt-react-native` supporta il formato messaggi ICU, che consente anche di formattare le variabili.
```jsx copy
import { msg, useMessages } from 'gt-react-native';
const encodedString = msg('There are {count, plural, =0 {no items} =1 {one item} other {{count} items}} in the cart', { count: 10 });
export default function TranslateGreeting() {
const m = useMessages();
return (
{m(encodedString)}
);
}
```
Il formato dei messaggi ICU è un modo efficace per formattare le variabili.
Per maggiori informazioni, consulta la [documentazione sul formato dei messaggi ICU](https://unicode-org.github.io/icu/userguide/format_parse/messages/).
***
## Note
* La funzione `msg` serve a contrassegnare le stringhe per la traduzione.
* Le stringhe contrassegnate con `msg` vengono tradotte prima del runtime, durante il processo di build (tranne che in sviluppo).
## Passaggi successivi
* Consulta [`useMessages`](/docs/react-native/api/strings/use-messages) per tradurre le stringhe.