# General Translation React SDKs (gt-react, gt-next, gt-react-native): msg
URL: https://generaltranslation.com/fr/docs/react/reference/functions/msg.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Enregistre et encode une chaîne pour la traduction au niveau du module. Référence de l'API pour msg.

La fonction `msg` marque et encode une chaîne pour la traduction. Utilisez-la pour enregistrer des chaînes au niveau du module — en dehors d&#39;un composant — puis la résoudre à l&#39;exécution avec [`useMessages`](/docs/react/reference/hooks/use-messages).

*Disponible dans `gt-react`, `gt-next`, `gt-tanstack-start` et `gt-react-native`.*

## Vue d’ensemble [#overview]

Appelez `msg` avec une chaîne pour obtenir une chaîne encodée. Passez cette valeur encodée à [`useMessages`](/docs/react/reference/hooks/use-messages) pour récupérer la traduction.

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

*Remarque : `msg` encode son entrée, vous ne pouvez donc pas l’afficher directement. Pour retrouver la chaîne d’origine, décodez-la avec [`decodeMsg`](/docs/node/reference/functions/decode-msg).*

## Fonctionnement [#how-it-works]

* **Enregistrement pour l’extraction.** `msg` marque la chaîne afin que le CLI puisse l’extraire pour la traduction et que [`useMessages`](/docs/react/reference/hooks/use-messages) puisse la résoudre à l’exécution. Sans options, elle renvoie la chaîne inchangée ; avec des options, elle renvoie une chaîne encodée qui porte ces options.
* **Traduction au build-time.** En production, les chaînes enregistrées sont traduites pendant le build. Les traductions manquantes utilisent le texte d’origine. En développement, la traduction se fait à la demande avec un léger délai.
* **Décodage.** `decodeMsg` extrait la chaîne interpolée d’origine d’un message encodé. [`decodeOptions`](/docs/node/reference/functions/decode-options) extrait les options.
* **Tableaux.** `msg` accepte aussi un tableau de chaînes ; lorsqu’un `$id` est fourni, chaque entrée reçoit un id unique de `${id}.${index}`.

*Les exemples importent depuis `gt-react` ; importez plutôt depuis le paquet de votre framework.*

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

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

## Paramètres [#parameters]

| Paramètre             | Description                                                          | Type                                                                                 | Facultatif | Par défaut |
| --------------------- | -------------------------------------------------------------------- | ------------------------------------------------------------------------------------ | ---------- | ---------- |
| [`message`](#message) | La chaîne de caractères (ou le tableau de chaînes) à enregistrer.    | `string \| string[]`                                                                 | Non        | —          |
| [`options`](#options) | Variables d’interpolation et options telles que `$context` et `$id`. | [`InlineTranslationOptions`](/docs/react/reference/types/inline-translation-options) | Oui        | —          |

### `message` [#message]

**Type** `string | string[]` · **Obligatoire**

Le texte à enregistrer et à encoder. Un tableau permet d’enregistrer plusieurs chaînes à la fois.

### `options` [#options]

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

Variables d’interpolation ainsi que des options telles que `$context`, `$id` et `$maxChars`. Les variables sont insérées dans la chaîne lors de sa résolution.

## Renvoie [#returns]

**Type** `string`

Une chaîne encodée dans laquelle les variables interpolées ont été appliquées. Si l’entrée est un tableau, un tableau de chaînes encodées est renvoyé. Utilisez [`useMessages`](/docs/react/reference/hooks/use-messages) pour résoudre le résultat.

## Exemples [#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" est une variable et n'est pas traduit.
```

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

// Lever l'ambiguïté avec $context
const LABEL = msg('Bank', { $context: 'a bank of a river' });
```

`gt-react` prend en charge [ICU message format](https://unicode-org.github.io/icu/userguide/format_parse/messages/) pour mettre en forme des variables dans des chaînes enregistrées.

## Notes [#notes]

* `msg` marque les chaînes à traduire ; la traduction s’effectue au build (ou à la demande en développement).
* Résolvez les chaînes encodées avec [`useMessages`](/docs/react/reference/hooks/use-messages).

## Sitemap

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