# gt-next: General Translation Next.js SDK: T URL: https://generaltranslation.com/es/docs/next/api/components/t.mdx --- title: T description: Referencia de la API del componente T --- ## Descripción general El componente `` es el principal método de traducción de `gt-next`. ```jsx Today, I went to {" the store"}

to buy some groceries.

``` El componente `` permite traducir tanto texto sin formato como estructuras JSX complejas. Además, ofrece funciones para gestionar variables, plurales y traducciones según el contexto. **Traducción en tiempo de compilación:** Las traducciones de `` se realizan en tiempo de compilació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](/docs/next/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 opcional para la cadena de traducción. Si no se proporciona, se genera uno automáticamente en tiempo de compilación. | | `context` | Contexto adicional para afinar la traducción. Útil para resolver frases ambiguas. | ### Devuelve `React.JSX.Element|undefined`, que contiene la traducción renderizada o el contenido alternativo según la configuración proporcionada. *** ## Funcionamiento ### Producción Durante el proceso de CD, cualquier elemento hijo dentro de un `` se traducirá antes de desplegar tu aplicación. Esto garantiza tiempos de carga rápidos para todas las configuraciones regionales, pero solo puede traducir contenido conocido en tiempo de compilación. Una vez generadas, las traducciones se almacenan (1) en la CDN o (2) en el resultado de compilación de tu aplicación, según tu configuración. Desde allí, el contenido traducido se entrega a tus usuarios. Si no se encuentra una traducción, se usará el contenido original como fallback. Asegúrate de seguir la [guía de despliegue aquí](/docs/next/tutorials/quickdeploy). ### Desarrollo Durante el desarrollo, la función `` traducirá el contenido bajo demanda. Esto es útil para hacer prototipos de cómo se verá tu aplicación en distintos idiomas. Recuerda agregar una clave de API de desarrollo a tu entorno para habilitar este comportamiento. Mientras se carga, `` devolverá undefined, salvo 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 al traducir bajo demanda en desarrollo. Esta demora no se producirá en las compilaciones de producción, a menos que el contenido se esté traduciendo explícitamente bajo demanda, es decir, mediante [``](/docs/next/api/components/tx) o [`tx`](/docs/next/api/strings/tx). *** ## Ejemplos ### Uso básico El `` traducirá sus elementos hijo. ```jsx title="SimpleTranslation.jsx" copy import { T } from 'gt-next'; export default function Greeting() { return ( Hello, world! ); } ``` ### Con variables Puedes usar el componente `` para marcar sus elementos hijos como variables. Esto te permite marcar contenido que no debe traducirse. Por lo general, los componentes `` envuelven contenido dinámico. ```jsx title="DynamicGreeting.jsx" copy import { T, Var } from 'gt-next'; export default function DynamicGreeting(user) { return ( Hello, {user.name}! ); } ``` ### Con plurales El componente `` también admite la pluralización mediante el componente ``. ```jsx title="ItemCount.jsx" copy import { T, Plural } from 'gt-next'; export default function ItemCount({ count }) { return ( You have an item.} other={<>You have items.} /> ); } ``` ### Limitaciones El componente `` no traduce contenido que sea dinámico. ```jsx title="DynamicContent.jsx" copy import { T } from 'gt-next'; export default function DynamicContent({greeting}) { return ( {greeting} {/* generará un error */} ); } ``` La función `` traduce sus elementos hijos. ```jsx title="Example.jsx" copy import { T } from 'gt-next'; const ValidTranslation = ({ children }) => (
{children}
); const InvalidTranslation = ({ children }) => (
No translation
); export default function Example() { return ( { /* [!code highlight] */}
This is valid!
{/* se traducirá */} { /* [!code highlight] */} Hello, world! {/* se traducirá */} {/* no se traducirá */}
); } ``` **Nota:** Como regla general, se traducirá cualquier contenido que esté *literalmente* entre los dos `` del archivo. 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 contenido de tu aplicación. Es el método principal de localización en `gt-next`. * Usa el componente `` para traducir texto sin formato o estructuras JSX, incluidas las variables y la pluralización. * Si usas el componente `` en el cliente, asegúrate de envolverlo en un [``](/docs/next/api/components/gtprovider) para acceder al contexto de traducción. ## Próximos pasos * Para las traducciones bajo demanda, consulta el componente [``](/docs/next/api/components/tx). * Para funciones más avanzadas, consulta la [referencia de ``](/docs/next/guides/t). * Para traducir cadenas, consulta [`tx`](/docs/next/api/strings/tx), [`getGT`](/docs/next/api/strings/get-gt) y [`useGT`](/docs/next/api/strings/use-gt).