Config

loadDictionary()

Referencia de la API para la función loadDictionary().

Descripción general

loadDictionary() cargará un archivo json de traducción para una localidad dada.

Esta función está destinada para quienes desean usar gt-react como una biblioteca i18n independiente.

Esta función se utiliza principalmente para migrar proyectos existentes con i18n a General Translation mientras mantienen sus traducciones actuales.

Si existen múltiples traducciones, las traducciones de los diccionarios cargados por loadDictionary() siempre tendrán prioridad sobre las demás. loadDictionary() solo admite el uso de archivos JSON con traducciones de cadenas de texto.

Referencia

Parámetros

PropTypeDefault
locale?
string
-

Descripción

TipoDescripción
localeEl locale para el cual se deben cargar las traducciones.

Retorna

Un Promise<any> que resuelve a un diccionario que mapea ids a traducciones para el locale dado.


Configuración

Generalmente, cargarás el diccionario desde el directorio ./public/locales.

Define tu función loadDictionary() en un archivo. Asegúrate de que la función retorne una promesa que resuelva a un objeto con las traducciones para la localidad dada.

src/loadDictionary.js
export default async function loadDictionary(locale) {
  const translations = await import(`../public/locales/${locale}.json`);
  return translations.default;
}

Luego pásala a tu componente <GTProvider>:

src/App.js
import { GTProvider } from 'gt-react';
import loadDictionary from './loadDictionary';

<GTProvider loadDictionary={loadDictionary}>
  <App />
</GTProvider>

Pregunta: ¿Cuál es la diferencia entre loadTranslations() y loadDictionary()?

  • loadTranslations() se utiliza para definir un comportamiento personalizado de carga para obtener traducciones para tu aplicación. Esto podría ser obtener traducciones desde un CDN, una base de datos o el bundle de tu aplicación. Normalmente, estas son traducciones generadas por máquina, gestionadas por la herramienta cli, y no son muy fáciles de editar para los usuarios.
  • loadDictionary() está destinado para implementaciones de gt-react como una librería independiente. Los usuarios traen sus propias traducciones y no se utiliza ninguna infraestructura de traducción.

Notas

  • loadDictionary() se utiliza para cargar traducciones personalizadas para tu aplicación.
  • Los diccionarios cargados por loadDictionary() tendrán prioridad sobre las traducciones cargadas por loadTranslations().

Próximos pasos

¿Qué te parece esta guía?