# General Translation React SDKs (gt-react, gt-next): decodeVars URL: https://generaltranslation.com/fr/docs/react/reference/functions/decode-vars.mdx --- title: decodeVars description: Restaurez les valeurs des variables encodées par declareVar avec General Translation gt-react. Référence API de decodeVars. --- La fonction `decodeVars` extrait les valeurs d’origine des chaînes qui contiennent des marqueurs [`declareVar`](/docs/react/reference/functions/declare-var). Comme `declareVar` ajoute des marqueurs compatibles ICU au texte source, ces marqueurs peuvent interférer avec la logique de traitement des chaînes — `decodeVars` les supprime. *Disponible dans `gt-react`, `gt-next`, `gt-tanstack-start` et `gt-react-native`. Les exemples importent depuis `gt-react` ; importez plutôt depuis le package de votre framework.* ## Vue d’ensemble [#overview] Passez une chaîne contenant des marqueurs `declareVar`, et `decodeVars` la renvoie avec les valeurs d’origine réinsérées. ```tsx function getGreeting({ name }) { const greeting = 'Hello, ' + declareVar(name); // "Hello, {_gt_, select, other {Brian}}" return decodeVars(greeting); // "Hello, Brian" — comme si declareVar n'avait jamais été appelé } ``` *Remarque : `decodeVars` n’affecte que les chaînes source qui contiennent des marqueurs `declareVar`. Il n’a aucun effet sur les chaînes traduites et n’est pas un parseur MessageFormat ICU générique.* ## Fonctionnement [#how-it-works] `decodeVars` cible les modèles ICU MessageFormat créés par [`declareVar`](/docs/react/reference/functions/declare-var), en remplaçant chaque variable `_gt_` par sa valeur d’origine tout en préservant exactement le reste du contenu. Utilisez-le lorsque votre logique existante de manipulation de chaînes doit s’exécuter sur une chaîne contenant des marqueurs de variable. ## Paramètres [#parameters] | Paramètre | Description | Type | Facultatif | Par défaut | | -------------------------- | --------------------------------------------------------------------- | -------- | ---------- | ---------- | | [`icuString`](#icu-string) | Une chaîne contenant des marqueurs ICU issus d’appels à `declareVar`. | `string` | Non | — | ### `icuString` [#icu-string] **Type** `string` · **Obligatoire** Une chaîne contenant des marqueurs ICU générés par [`declareVar`](/docs/react/reference/functions/declare-var). ## Renvoie [#returns] **Type** `string` La chaîne dont les marqueurs ICU ont été supprimés et qui contient les valeurs d’origine des variables. ## Exemples [#examples] ```tsx title="BasicUsage.tsx" import { declareVar, decodeVars } from 'gt-react'; const encodedVar = declareVar(name); // "{_gt_, select, other {Alice}}" const decodedVar = decodeVars(encodedVar); // "Alice" ``` ```tsx title="MultipleVariables.tsx" import { declareVar, decodeVars } from 'gt-react'; const name1 = 'Alice'; const name2 = 'Bob'; const encodedVar = 'Hello, ' + declareVar(name1) + '! My name is ' + declareVar(name2); // "Hello, {_gt_, select, other {Alice}}! My name is {_gt_, select, other {Bob}}" const decodedVar = decodeVars(encodedVar); // "Hello, Alice! My name is Bob" ``` ## Remarques [#notes] * Utilisez `decodeVars` uniquement sur les chaînes qui contiennent des marqueurs [`declareVar`](/docs/react/reference/functions/declare-var). * Cette fonction cible les motifs ICU créés par `declareVar` et ne doit pas être utilisée sur des chaînes ICU quelconques. * Elle n’affecte pas le traitement de la traduction — elle supprime uniquement les marqueurs pour manipuler les chaînes.