# gt-node: General Translation Node.js SDK: getTranslations
URL: https://generaltranslation.com/it/docs/node/reference/functions/get-translations.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Ottieni un resolver del dizionario di General Translation per l'impostazione regionale della richiesta corrente. Riferimento API per getTranslations.

Una funzione asincrona che restituisce una funzione `t` per risolvere le voci del dizionario tramite id. Usala con un dizionario configurato tramite [`initializeGT`](/docs/node/reference/functions/initialize-gt) per tradurre, per ogni richiesta, testi centralizzati basati su chiavi.

## Panoramica [#overview]

Usa `await` con `getTranslations` all&#39;interno di uno scope [`withGT`](/docs/node/reference/functions/with-gt) per ottenere una funzione sincrona `t(id, options?)`, quindi recupera le voci del dizionario tramite id.

```ts
import { getTranslations } from 'gt-node';

const t = await getTranslations();
const title = t('page.title');
```

Firma:

```ts
getTranslations(rootId?: string): Promise<TFunctionType>

type TFunctionType = ((id: string, options?: TranslationVariables) => string) & {
  obj: (id: string) => DictionaryObjectTranslation;
};
```

*Nota: `getTranslations` deve essere chiamato all&#39;interno di una callback di [`withGT`](/docs/node/reference/functions/with-gt), in modo che sappia quale impostazione regionale usare, e richiede un `dizionario` (o [`loadDictionary`](/docs/react/reference/functions/load-dictionary)) configurato in [`initializeGT`](/docs/node/reference/functions/initialize-gt).*

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

* **Ricerca nel dizionario.** `t(id)` risolve la voce in `id` nel dizionario e ne restituisce la traduzione per l&#39;impostazione regionale attiva, ricadendo sulla voce sorgente quando manca una traduzione.
* **Gli `id` sconosciuti generano un errore.** Se il dizionario sorgente non contiene alcuna voce per `id`, `t(id)` genera `Dictionary entry <id> cannot be found`. Questo è l&#39;unico percorso di traduzione in `gt-node` che genera un errore invece di ricadere su una stringa sorgente.
* **Ambito della radice.** Passa `rootId` per limitare tutte le ricerche a un prefisso, così `getTranslations('page')` ti consente di chiamare `t('title')` invece di `t('page.title')`.
* **Interpolazione.** Passa le variabili nell&#39;oggetto options per interpolarle nella voce usando la sintassi `{key}`.
* **Sottoalberi di oggetti.** `t.obj(id)` restituisce un sottoalbero annidato del dizionario come semplice oggetto di stringhe tradotte.

## Parametri [#parameters]

`getTranslations` accetta un `rootId` opzionale. La funzione `t` restituita accetta:

| Parametro             | Descrizione                                        | Tipo                   | Facoltativo | Predefinito |
| --------------------- | -------------------------------------------------- | ---------------------- | ----------- | ----------- |
| [`rootId`](#root-id)  | Prefisso applicato a ogni id usato per la ricerca. | `string`               | Sì          | —           |
| [`id`](#id)           | L&#39;id della voce del dizionario da risolvere.   | `string`               | No          | —           |
| [`options`](#options) | Valori delle variabili da interpolare nella voce.  | `TranslationVariables` | Sì          | `{}`        |

### `rootId` [#root-id]

**Tipo** `string` · **Opzionale**

Un prefisso applicato a ogni id passato a `t`. Se impostato, `t('title')` viene risolto come `rootId.title`.

### `id` [#id]

**Tipo** `string` · **Obbligatorio**

L&#39;id della voce del dizionario da risolvere, usando la notazione puntata per le voci annidate (ad esempio, `'page.title'`).

### `options` [#options]

**Tipo** `TranslationVariables` · **Facoltativo**

Un record contenente i valori delle variabili da interpolare nella voce risolta utilizzando la sintassi `{key}`.

## Restituisce [#returns]

**Tipo** `Promise<TFunctionType>`

La Promise si risolve con la funzione `t`. Chiamando `t(id, options?)` viene restituita la stringa tradotta; `t.obj(id)` restituisce un sottoalbero di oggetti tradotto.

## Esempi [#examples]

```ts title="server.js"
// Configura un dizionario all'avvio
import { initializeGT } from 'gt-node';

initializeGT({
  defaultLocale: 'en',
  locales: ['en', 'es', 'fr'],
  dictionary: {
    page: { title: 'Welcome', greeting: 'Hello, {name}!' },
  },
});
```

```ts title="handler.js"
// Risolvi le voci del dizionario per l'impostazione regionale della richiesta
import { withGT, getTranslations } from 'gt-node';

function handleRequest(locale) {
  return withGT(locale, async () => {
    const t = await getTranslations();
    return {
      title: t('page.title'),
      greeting: t('page.greeting', { name: 'Alice' }),
    };
  });
}
```

```ts title="handler.js"
// Limita le ricerche con un rootId
const t = await getTranslations('page');
const title = t('title'); // risolve 'page.title'
```

## Note [#notes]

* Gli id del dizionario sconosciuti generano un errore; mantieni sincronizzate le chiavi del dizionario tra il sorgente e il codice.
* Per le stringhe inline, usa [`getGT`](/docs/node/reference/functions/get-gt); per le costanti a livello di modulo, usa [`msg`](/docs/node/reference/functions/msg) con [`getMessages`](/docs/node/reference/functions/get-messages).

## Sitemap

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