# General Translation React SDKs (gt-react, gt-next, gt-react-native): msg
URL: https://generaltranslation.com/it/docs/react/reference/functions/msg.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Registra e codifica una stringa da tradurre a livello di modulo. Riferimento API per msg.

La funzione `msg` contrassegna e codifica una stringa per la traduzione. Usala per registrare le stringhe a livello di modulo — fuori da un componente — e poi risolverle a Runtime con [`useMessages`](/docs/react/reference/hooks/use-messages).

*Disponibile in `gt-react`, `gt-next`, `gt-tanstack-start` e `gt-react-native`.*

## Panoramica [#overview]

Chiama `msg` con una stringa per ottenere una stringa codificata. Passa poi quel valore codificato a [`useMessages`](/docs/react/reference/hooks/use-messages) per ottenere la traduzione.

```tsx
const encodedString = msg('Hello, world!');
```

*Nota: `msg` codifica l&#39;input, quindi non puoi eseguirne il rendering direttamente. Per recuperare la stringa originale, decodificala con [`decodeMsg`](/docs/node/reference/functions/decode-msg).*

## Come funziona [#how-it-works]

* **Registrazione per l&#39;estrazione.** `msg` contrassegna la stringa affinché la CLI possa estrarla per la traduzione e [`useMessages`](/docs/react/reference/hooks/use-messages) possa risolverla a runtime. Senza opzioni restituisce la stringa invariata; con le opzioni restituisce una stringa codificata che le incorpora.
* **Traduzione in fase di build.** In produzione, le stringhe registrate vengono tradotte durante la build. Se una traduzione manca, viene usato l&#39;originale come fallback. In sviluppo, la traduzione avviene su richiesta con un leggero ritardo.
* **Decodifica.** `decodeMsg` estrae la stringa interpolata originale da un messaggio codificato. [`decodeOptions`](/docs/node/reference/functions/decode-options) estrae le opzioni.
* **Array.** `msg` accetta anche un array di stringhe; quando viene fornito un `$id`, a ogni elemento viene assegnato un id univoco di `${id}.${index}`.

*Gli esempi importano da `gt-react`; importa invece dal pacchetto del tuo framework.*

```tsx
import { msg, decodeMsg } from 'gt-react';

const encoded = msg('Hello, world!');
const decoded = decodeMsg(encoded);
console.log(decoded); // "Hello, world!"
```

## Parametri [#parameters]

| Parametro             | Descrizione                                                    | Tipo                                                                                 | Facoltativo | Predefinito |
| --------------------- | -------------------------------------------------------------- | ------------------------------------------------------------------------------------ | ----------- | ----------- |
| [`message`](#message) | La stringa (o l&#39;array di stringhe) da registrare.          | `string \| string[]`                                                                 | No          | —           |
| [`options`](#options) | Variabili di interpolazione e opzioni come `$context` e `$id`. | [`InlineTranslationOptions`](/docs/react/reference/types/inline-translation-options) | Sì          | —           |

### `message` [#message]

**Tipo** `string | string[]` · **Obbligatorio**

Il contenuto testuale da registrare e codificare. Un array consente di registrare più stringhe contemporaneamente.

### `options` [#options]

**Tipo** [`InlineTranslationOptions`](/docs/react/reference/types/inline-translation-options) · **Facoltativo**

Variabili di interpolazione e opzioni come `$context`, `$id` e `$maxChars`. Le variabili vengono inserite nella stringa al momento della risoluzione.

## Restituisce [#returns]

**Tipo** `string`

Una stringa codificata, con eventuali variabili interpolate già applicate. Per un input di tipo array, viene restituito un array di stringhe codificate. Risolvi il risultato con [`useMessages`](/docs/react/reference/hooks/use-messages).

## Esempi [#examples]

```tsx
import { msg, useMessages } from 'gt-react';

const encodedString = msg('Hello, world!');

export default function TranslateGreeting() {
  const m = useMessages();
  return <p>{m(encodedString)}</p>;
}
```

```tsx
import { msg, useMessages } from 'gt-react';

const encodedString = msg('Hello, {name}!', { name: 'Alice' });

export default function TranslateGreeting() {
  const m = useMessages();
  return <p>{m(encodedString)}</p>;
}
// "Alice" è una variabile e non viene tradotta.
```

```tsx
import { msg } from 'gt-react';

// Disambiguazione con $context
const LABEL = msg('Bank', { $context: 'a bank of a river' });
```

`gt-react` supporta [ICU message format](https://unicode-org.github.io/icu/userguide/format_parse/messages/) per formattare le variabili nelle stringhe registrate.

## Note [#notes]

* `msg` contrassegna le stringhe da tradurre; la traduzione avviene in fase di build (o su richiesta durante lo sviluppo).
* Risolvi le stringhe codificate con [`useMessages`](/docs/react/reference/hooks/use-messages).

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
