Inline Translations

tx

Referencia de API de la función de traducción de cadenas tx

Descripción general

La función tx es una función del lado del servidor para traducir strings.

await tx('¡Hola, mundo!'); // devuelve "Hola, mundo!"

Traducción en tiempo de ejecución: Las traducciones con tx se realizan en tiempo de ejecución. Esto significa que la traducción ocurre al instante, para que puedas traducir contenido disponible en tiempo de ejecución.

Referencias

Parámetros

Prop

Type

NombreDescripción
contentLa cadena que se debe traducir.
optionsOpciones de traducción para personalizar el comportamiento de tx. Consulta RuntimeTranslationOptions.

Devuelve

Una promesa que se resuelve en una cadena con el contenido traducido, o el contenido original si no se requiere traducción.


Comportamiento

La función tx traduce cadenas en tiempo de ejecución. Esto significa que las traducciones se realizan en tiempo real, por lo que puedes traducir contenido que solo se conoce en tiempo de ejecución. La contrapartida es que hay un retraso mientras se carga una traducción a demanda, lo cual es significativamente más lento.

Nuestro consejo es traducir todo lo posible en tiempo de build usando getGT, useGT o <T>, y usar traducciones a demanda, como tx y <Tx>, solo cuando sea necesario.

Asegúrate de seguir la guía de despliegue aquí.


Ejemplo

Uso básico

Puedes usar tx para traducir strings.

src/components/translateGreeting.jsx
import { tx } from 'gt-next/server';

export default async function translateGreeting() {
    return await tx("¡Hola, mundo!"); 
}

Añadir contexto

Puedes personalizar la traducción proporcionando un contexto que se tenga en cuenta durante la traducción.

TranslateWithOptions.jsx
import { tx } from 'gt-next/server';

export default async function TranslateWithOptions() {
    return await tx("¡Hola, mundo!", {
      $context: 'Traducir de manera informal'
    });
}

Uso de variables

Para pasar valores a una cadena, debes (1) asignar un identificador y (2) referenciar ese identificador en el objeto que envíes.

translateWithVariables.js
import { tx } from 'gt-next/server';

export default async function translateWithVariables() {
  return await tx("El coste es {price, number, ::currency/USD}", {
    price: 29.99,
  });
}

Especificar una locale

Puedes especificar una locale para usar en la traducción. De forma predeterminada, la locale se establece en el idioma preferido del usuario.

translateWithLocale.js
import { tx } from 'gt-next/server';

export default async function translateWithLocale() {
    return await tx("¡Hola, mundo!", { $locale: 'fr' }); 
}

Notas

  • tx es exclusivamente para uso en el servidor y no puede utilizarse en componentes del lado del cliente.
  • Las traducciones con tx se realizan en tiempo de ejecución, es decir, se traducen en vivo. Esto es significativamente más lento que las traducciones en tiempo de compilación.

Próximos pasos

  • Consulta useGT y getGT para traducir strings antes del despliegue.
  • Para traducir JSX, consulta <T> y <Tx>.
  • Consulta RuntimeTranslationOptions para obtener más información sobre cómo personalizar las traducciones.

¿Qué te ha parecido esta guía?

tx