# gt-node: General Translation Node.js SDK: getTranslations
URL: https://generaltranslation.com/es/docs/node/reference/functions/get-translations.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Obtén un resolvedor de diccionario de General Translation para la configuración regional de la solicitud actual. Referencia de API de getTranslations.

Una función asíncrona que devuelve una función `t` para resolver entradas de diccionario por id. Úsala con un diccionario configurado mediante [`initializeGT`](/docs/node/reference/functions/initialize-gt) para traducir, en cada solicitud, texto centralizado basado en keys.

## Resumen general [#overview]

Usa `await` con `getTranslations` dentro del ámbito de [`withGT`](/docs/node/reference/functions/with-gt) para obtener una función síncrona `t(id, options?)` y luego consultar entradas del diccionario por `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` debe llamarse dentro de un `callback` de [`withGT`](/docs/node/reference/functions/with-gt) para que sepa qué configuración regional usar, y requiere un `dictionary` (o [`loadDictionary`](/docs/react/reference/functions/load-dictionary)) configurado en [`initializeGT`](/docs/node/reference/functions/initialize-gt).*

## Cómo funciona [#how-it-works]

* **Búsqueda en el diccionario.** `t(id)` busca la entrada correspondiente a `id` en el diccionario y devuelve su traducción para la configuración regional activa, recurriendo a la entrada de origen cuando falta una traducción.
* **Los `id` desconocidos lanzan un error.** Si el diccionario de origen no tiene ninguna entrada para `id`, `t(id)` lanza `Dictionary entry <id> cannot be found`. Esta es la única ruta de traducción en `gt-node` que lanza un error en lugar de recurrir a una cadena de origen.
* **Ámbito raíz.** Pasa `rootId` para limitar todas las búsquedas a un prefijo, de modo que `getTranslations('page')` te permite llamar a `t('title')` en lugar de `t('page.title')`.
* **Interpolación.** Pasa variables en el objeto de opciones para interpolarlas en la entrada con la sintaxis `{key}`.
* **Subárboles de objetos.** `t.obj(id)` devuelve un subárbol anidado del diccionario como un objeto plano de cadenas traducidas.

## Parámetros [#parameters]

`getTranslations` acepta un `rootId` opcional. La función `t` devuelta acepta:

| Parámetro             | Descripción                                               | Tipo                   | Opcional | Predeterminado |
| --------------------- | --------------------------------------------------------- | ---------------------- | -------- | -------------- |
| [`rootId`](#root-id)  | Prefijo que se aplica a cada id de búsqueda.              | `string`               | Sí       | —              |
| [`id`](#id)           | El id de la entrada del diccionario que se debe resolver. | `string`               | No       | —              |
| [`options`](#options) | Valores de variables para interpolar en la entrada.       | `TranslationVariables` | Sí       | `{}`           |

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

**Tipo** `string` · **Opcional**

Un prefijo que se aplica a cada `id` que se pasa a `t`. Cuando se configura, `t('title')` se resuelve como `rootId.title`.

### `id` [#id]

**Tipo** `string` · **Obligatorio**

El id de la entrada del diccionario que se debe resolver, con notación por puntos para las entradas anidadas (por ejemplo, `'page.title'`).

### `options` [#options]

**Tipo** `TranslationVariables` · **Opcional**

Un objeto con valores de variables para interpolarlos en la entrada resuelta con la sintaxis `{key}`.

## Devuelve [#returns]

**Tipo** `Promise<TFunctionType>`

Se resuelve con la función `t`. Al llamar a `t(id, options?)` se devuelve la cadena traducida; `t.obj(id)` devuelve un subárbol traducido del objeto.

## Ejemplos [#examples]

```ts title="server.js"
// Configurar un diccionario al inicio
import { initializeGT } from 'gt-node';

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

```ts title="handler.js"
// Resolver entradas del diccionario para la configuración regional de la solicitud
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"
// Acotar búsquedas con un rootId
const t = await getTranslations('page');
const title = t('title'); // resuelve 'page.title'
```

## Notas [#notes]

* Los ids de diccionario desconocidos generan errores; mantén sincronizadas las claves del diccionario entre el texto fuente y el código.
* Para cadenas inline, usa [`getGT`](/docs/node/reference/functions/get-gt); para constantes de ámbito de módulo, 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.
