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

to buy some groceries.

// [!code highlight] ``` El componente `` admite 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 generan en tiempo de compilación. Esto significa que la traducción se realiza antes del despliegue para reducir la latencia. Asegúrate de seguir la [guía de despliegue aquí](/docs/react-native/tutorials/quickdeploy). ## Referencia ### Propiedades ### Descripciones | Prop | Descripción | | ---------- | ------------------------------------------------------------------------------------------------------------------- | | `children` | El contenido que se traducirá. Puede incluir texto sin formato o estructuras JSX. | | `id` | Un identificador único para la cadena de traducción. Esto garantiza una traducción coherente en toda tu aplicación. | | `context` | Contexto adicional para precisar la traducción. Útil para resolver expresiones 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 tiempos de carga rápidos 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/react-native/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, 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 un retraso durante la traducción bajo demanda en desarrollo. Este retraso no se producirá en las compilaciones de producción, ya que todo estará traducido de antemano. *** ## Ejemplos ### Uso básico El componente `` puede traducir cadenas sencillas mediante un `id` y sus `children`. Recuerda que el componente `` debe usarse dentro de un [``](/docs/react-native/api/components/gtprovider) para acceder a las traducciones. ```jsx title="SimpleTranslation.jsx" copy import { T } from 'gt-react-native'; export default function Greeting() { return ( // [!code highlight] Hello, world! // [!code highlight] ); } ``` ### Con variables El componente `` puede incluir variables para contenido dinámico en las traducciones. ```jsx title="DynamicGreeting.jsx" copy import { T, Var } from 'gt-react-native'; export default function DynamicGreeting(user) { return ( Hello, {user.name}! // [!code highlight] ); } ``` ### Con plurales El componente `` también permite la pluralización mediante el componente ``. ```jsx title="ItemCount.jsx" copy import { T, Plural } from 'gt-react-native'; export default function ItemCount({ count }) { return ( Tienes un artículo.} // [!code highlight] other={<>Tienes artículos.} // [!code highlight] /> // [!code highlight] ); } ``` ### Limitaciones El componente `` no traduce contenido dinámico. ```jsx title="DynamicContent.jsx" copy import { T } from 'gt-react-native'; export default function DynamicContent({greeting}) { return ( {greeting} // generará un error // [!code highlight] ); } ``` La función `` traduce su contenido hijo. ```jsx title="Example.jsx" copy import { T } from 'gt-react-native'; 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:** Una buena regla general 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-react-native`. * Usa el componente `` para traducir texto sin formato o estructuras JSX, incluidas las variables y la pluralización. * Asegúrate de que el componente `` esté envuelto en un [``](/docs/react-native/api/components/gtprovider) para acceder al contexto de traducción. ## Próximos pasos * Para funcionalidades más avanzadas, como la traducción bajo demanda, las variables, el contexto y el manejo de plurales, consulta la documentación sobre los [patrones de diseño de ``](/docs/react-native/guides/t). * Para traducir cadenas, consulta [`useGT`](/docs/react-native/api/strings/use-gt).