# Vue: LoadTranslations
URL: https://generaltranslation.com/es/docs/vue/reference/types/load-translations.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Carga el catálogo completo de traducciones para una configuración regional solicitada. Referencia de la API de LoadTranslations.

Proporciona esta función de callback a [`createGT()`](/docs/vue/reference/functions/create-gt) o [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) cuando los catálogos de destino se almacenen en archivos de la aplicación, una base de datos, una API u otro host.

## Resumen [#overview]

```ts
type LoadTranslations = (
  locale: string
) => Promise<TranslationCatalog>;
```

El plugin llama al loader solo para las configuraciones regionales de destino no almacenadas en caché. La configuración regional predeterminada usa el texto de origen y nunca llama al loader.

## Parámetros [#parameters]

| Parámetro | Descripción                                                     | Tipo     | Opcional | Predeterminado |
| --------- | --------------------------------------------------------------- | -------- | -------- | -------------- |
| `locale`  | Configuración regional cuyo catálogo completo se debe devolver. | `string` | No       | —              |

Un plugin [`createGT()`](/docs/vue/reference/functions/create-gt) estándar transmite la configuración regional solicitada sin modificaciones. Un plugin [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) primero resuelve la configuración regional con respecto a sus `locales` y `customMapping` configurados, y conserva la grafía configurada para las rutas de archivo.

## Valor devuelto [#returns]

**Tipo** `Promise<`[`TranslationCatalog`](/docs/vue/reference/types/translation-catalog)`>`

Se resuelve con el catálogo completo indexado por hash correspondiente a `locale`. Se resuelve con `{}` cuando no haya traducciones disponibles y la aplicación deba usar el contenido de origen.

No devuelvas `null`, `undefined` ni un valor parcial con una estructura distinta. El tipo de callback público requiere un objeto de catálogo.

## Comportamiento de carga [#loading-behavior]

* Un resultado correcto se almacena en caché durante la vida útil de ese plugin.
* Las cargas simultáneas de la misma configuración regional comparten una sola promesa.
* `plugin.loadTranslations(locale)` precarga las traducciones sin cambiar la configuración regional activa.
* `plugin.setLocale(locale)` reactivo carga las traducciones antes de cambiar de configuración regional.
* [`initializeGTSPA()`](/docs/vue/reference/functions/initialize-gt-spa) carga la configuración regional de destino inicial antes de que se resuelva su promesa.
* Al instalar un plugin [`createGT()`](/docs/vue/reference/functions/create-gt), se inicia en segundo plano la carga inicial de la configuración regional de destino, lo que permite renderizar primero el contenido de origen.

## Fallos [#failures]

Cuando el callback se rechaza, `gt-vue` registra un diagnóstico, vuelve a lanzar el mismo error, elimina la entrada en curso y deja el resultado sin almacenar en caché. Una llamada posterior puede reintentarlo.

Por lo tanto, una llamada imperativa a `loadTranslations()`, un cambio reactivo de configuración regional o la inicialización de la SPA se rechazan. La carga en segundo plano iniciada por `app.use(createGT(...))` captura el rechazo tras registrarlo, de modo que la aplicación puede continuar con el contenido de origen.

## Ejemplo [#example]

```ts title="src/loadTranslations.ts"
import type { LoadTranslations } from 'gt-vue';

const loadTranslations: LoadTranslations = async (locale) => {
  try {
    return (await import(`./_gt/${locale}.json`)).default;
  } catch (error) {
    console.error(`No translation catalog for ${locale}`, error);
    return {};
  }
};

export default loadTranslations;
```

El loader anterior convierte los archivos inexistentes en un catálogo vacío válido. Elimina el `try`/`catch` si un catálogo inexistente o no válido debe detener la inicialización.

## Sitemap

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