# 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 para el componente `` --- ## Resumen El componente `` es el principal método de traducción en `gt-next`. ```jsx Today, I went to {" the store"}

to buy some groceries.

``` El componente `` admite traducir texto sin formato, así como estructuras JSX complejas. Además, ofrece funciones para manejar 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 aquí](/docs/next/tutorials/quickdeploy). *** ## Referencia ### Props ### Descripciones | Prop | Descripción | | ---------- | ------------------------------------------------------------------------------------------------------------------- | | `children` | El elemento hijo que se traducirá. Puede incluir texto sin formato o estructuras JSX. | | `id` | Un identificador único de la cadena de traducción. Esto garantiza una traducción consistente en toda tu aplicación. | | `context` | Contexto adicional para precisar 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. *** ## Comportamiento ### Producción Durante el proceso de CD, cualquier elemento hijo dentro de un `` se traducirá antes de desplegar tu aplicación. Esto garantiza un tiempo de carga rápido para todos los locales, 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 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 como alternativa. 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 resulta útil para prototipar cómo se verá tu aplicación en diferentes idiomas. Recuerda añadir una clave API 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 puede personalizarse con la configuración de renderizado. Si se produce un error, `` devolverá el contenido original. Verás un retraso durante la traducción bajo demanda en desarrollo. Este retraso 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 `` 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 los elementos hijo como variables. Esto te permite marcar contenido que no debe traducirse. Normalmente, 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 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 su elemento hijo. ```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:** Una buena regla práctica es que 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 en 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 `` del lado del cliente, asegúrate de que esté envuelto 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 funcionalidades más avanzadas, consulta la [referencia de ``](/docs/next/guides/t). * Para traducir cadena, consulta [`tx`](/docs/next/api/strings/tx), [`getGT`](/docs/next/api/strings/get-gt) y [`useGT`](/docs/next/api/strings/use-gt).