# gt-react: General Translation React SDK: T URL: https://generaltranslation.com/es/docs/react/api/components/t.mdx --- title: T description: Referencia de la API del componente T --- {/* GENERADO AUTOMÁTICAMENTE: No edites esto directamente. En su lugar, edita el template en content/docs-templates/. */} ## Descripción general El componente `` es el método principal de traducción en `gt-react`. ```jsx // [!code highlight] Today, I went to {" the store"}

to buy some groceries.

// [!code highlight] ``` El componente `` admite la traducción de texto sin formato, así como de estructuras JSX complejas. Además, ofrece funciones para gestionar variables, plurales y traducciones específicas del contexto. **Traducción en tiempo de construcción:** Las traducciones de `` se realizan en tiempo de construcción. Esto significa que la traducción se lleva a cabo antes del despliegue para reducir la latencia. Asegúrate de seguir la [guía de despliegue en este enlace](/docs/react/tutorials/quickdeploy). ## Referencia ### Props ### Descripciones | Prop | Descripción | | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `children` | El contenido que se va a traducir. Puede incluir texto sin formato o estructuras JSX. | | `id` | Un identificador único para la cadena. Esto garantiza una traducción coherente en toda tu aplicación. | | `context` | Contexto adicional para ajustar la traducción. Útil para desambiguar frases. | | `requiresReview` | Cuando es `true`, la traducción no se entrega hasta que se apruebe en un paso de revisión humana. Debe ser un literal booleano. `$requiresReview` es un alias equivalente. | ### Devuelve `React.JSX.Element|undefined`, que contiene la traducción renderizada o el contenido de reserva según la configuración proporcionada. *** ## Funcionamiento ### Producción Durante el proceso de CD, todo el contenido dentro de un `` se traducirá antes de que se despliegue tu aplicación. Esto garantiza tiempos de carga rápidos para todas las configuraciones regionales, pero solo puede traducir contenido conocido en tiempo de construcción. Una vez generadas, las traducciones se almacenan (1) en la CDN o (2) en la salida de compilación de tu aplicación, según tu configuración. A partir de ahí, el contenido traducido se sirve a tus usuarios. Si no se encuentra una traducción, se usará el contenido original. Asegúrate de seguir la [guía de despliegue aquí](/docs/react/tutorials/quickdeploy). ### Desarrollo Durante el desarrollo, la función `` traducirá el contenido on-demand. Esto resulta útil para crear prototipos de cómo se verá tu aplicación en distintos idiomas. Recuerda añadir una API key de desarrollo a tu entorno para habilitar este comportamiento. Mientras se carga, `` devolverá undefined, a menos que los idiomas sean similares (en-US vs en-GB), aunque este comportamiento se puede personalizar con la configuración de renderizado. Si se produce un error, `` devolverá el contenido original. Verás una demora durante la traducción on-demand en desarrollo. Esta demora no se producirá en las compilaciones de producción, ya que todo ya estará traducido. *** ## Ejemplos ### Uso básico El componente `` puede traducir cadenas simples usando un `id` y su contenido secundario. Recuerda que el componente `` debe usarse dentro de un [``](/docs/react/api/components/gtprovider) para acceder a las traducciones. ```jsx title="SimpleTranslation.jsx" copy import { T } from 'gt-react'; export default function Greeting() { return ( // [!code highlight] Hello, world! // [!code highlight] ); } ``` ### Con variables El componente `` puede incluir variables para mostrar contenido dinámico dentro de las traducciones. ```jsx title="DynamicGreeting.jsx" copy import { T, Var } from 'gt-react'; export default function DynamicGreeting(user) { return ( Hello, {user.name}! // [!code highlight] ); } ``` ### Con plurales El componente `` también admite la pluralización con el componente ``. ```jsx title="ItemCount.jsx" copy import { T, Plural } from 'gt-react'; export default function ItemCount({ count }) { return ( Tienes un artículo.} // [!code highlight] other={<>Tienes artículos.} // [!code highlight] /> // [!code highlight] ); } ``` ### Requiere revisión Usa `requiresReview` para hacer que una traducción pase por una revisión humana antes de publicarse en producción. ```jsx title="ReviewedGreeting.jsx" copy import { T } from 'gt-react'; export default function ReviewedGreeting() { return ( {/* [!code highlight] */} Welcome to our platform! ); } ``` **Nota:** `requiresReview` determina si las traducciones de tiempo de construcción y producción requieren revisión. La traducción on-demand en desarrollo es una comodidad de vista previa en vivo y no está sujeta a revisión, aunque la intención de revisarla sigue registrándose en los metadatos del contenido. ### Limitaciones El componente `` no traduce contenido dinámico. ```jsx title="DynamicContent.jsx" copy import { T } from 'gt-react'; export default function DynamicContent({greeting}) { return ( {greeting} // generará un error // [!code highlight] ); } ``` La función `` traduce sus elementos hijos. ```jsx title="Example.jsx" copy import { T } from 'gt-react'; const ValidTranslation = ({ children }) => (
{children}
); const InvalidTranslation = ({ children }) => (
No translation
); export default function Example() { return (
This is valid!
// se traducirá // [!code highlight] // se traducirá // [!code highlight] Hello, world! // [!code highlight] // [!code highlight] // no se traducirá
); } ``` **Nota:** Como regla general, cualquier contenido que esté *literalmente* entre los dos `` del archivo se traducirá. Siempre puedes añadir otro `` para traducir el contenido que no se esté traduciendo, aunque no se recomienda anidar componentes ``. *** ## Notas * El componente `` está diseñado para traducir el contenido de tu aplicación. Es el método principal de localización en `gt-react`. * Usa el componente `` para traducir texto sin formato o estructuras JSX, incluidas variables y plurales. * Asegúrate de que el componente `` esté dentro de un [``](/docs/react/api/components/gtprovider) para acceder al contexto de traducción. * La prop `requiresReview` solo acepta un literal booleano. Solo el valor `true` cambia el hash del contenido y no muestra la traducción hasta que se apruebe. ## Próximos pasos * Para funciones más avanzadas, como la traducción on-demand, las variables, el contexto y el manejo de plurales, consulta la documentación sobre [patrones de diseño de ``](/docs/react/guides/t). * Para traducir cadenas, consulta [`useGT`](/docs/react/api/strings/use-gt).