<GTProvider>
Référence API pour le composant <GTProvider>
Aperçu
Le composant <GTProvider>
fournit un contexte de Traduction Générale (GT) à ses enfants, leur permettant d'accéder au contenu traduit.
Il est requis pour toutes les traductions côté client dans votre application.
Quand l'utiliser
- Enveloppez votre application entière dans
<GTProvider>
pour activer les traductions côté client. - Lorsque vous travaillez avec des dictionnaires, spécifiez éventuellement un
id
pour limiter les données de dictionnaire envoyées au client, optimisant ainsi les performances pour les dictionnaires volumineux. - Le composant
<GTProvider>
est utilisé à la fois pour les balises<T>
en ligne et les dictionnaires.
Référence
Props
Prop | Type | Default |
---|---|---|
children? | ReactNode | - |
projectId? | string | - |
id?? | string | undefined |
dictionary?? | Dictionary | defaultDictionary |
locales?? | string[] | - |
defaultLocale?? | string | libraryDefaultLocale |
locale?? | string | - |
cacheUrl?? | string | 'https://cdn.gtx.dev' |
runtimeUrl?? | string | 'https://runtime.gtx.dev' |
renderSettings?? | RenderSettings | defaultRenderSettings |
_versionId?? | string | - |
devApiKey?? | string | - |
metadata?? | object | - |
Description
Prop | Description |
---|---|
children | Tout composant ou les parents de tout composant qui a besoin de traduire ou d'accéder aux informations de traduction côté client. Cela devrait inclure tous les composants utilisant <T> , useGT , ou d'autres utilitaires de traduction. |
projectId? | L'ID du projet requis pour les services cloud de General Translation. |
id? | L'ID d'un dictionnaire imbriqué pour limiter les données envoyées au client. Ceci est utile pour les grands projets avec des dictionnaires volumineux. |
dictionary? | Le dictionnaire de traduction pour le projet. |
locales? | La liste des locales approuvées pour le projet. |
defaultLocale? | La locale par défaut à utiliser si aucune autre locale n'est trouvée. |
locale? | La locale actuelle, si déjà définie. |
cacheUrl? | L'URL du service de cache pour récupérer les traductions. |
runtimeUrl? | L'URL du service d'exécution pour récupérer les traductions. |
renderSettings? | Les paramètres pour le rendu des traductions. |
_versionId? | L'ID de version pour récupérer les traductions. |
devApiKey? | La clé API pour les environnements de développement. |
metadata? | Métadonnées supplémentaires à transmettre au contexte. |
Retourne
React.JSX.Element|undefined
contenant les enfants qui ont été passés à ce composant.
Exemples
Utilisation de base
Enveloppez votre application dans <GTProvider>
pour ajouter la traduction à votre application.
N'oubliez pas d'ajouter une liste des locales prises en charge pour activer la traduction.
Dictionnaires
Vous pouvez également passer un dictionnaire au composant <GTProvider>
puis y accéder avec le hook useDict()
.
Pour plus d'informations sur l'utilisation des dictionnaires, consultez ce guide.
Ajout de la configuration
Si vous n'aimez pas passer les props directement au composant <GTProvider>
, vous pouvez créer un fichier de configuration et le passer au composant.
Il s'intègre également directement avec la commande gtx-cli translate
, donc vous n'avez pas à spécifier manuellement des éléments comme les locales en tant que paramètre.
Tout ce que vous avez à faire, c'est de passer ce fichier au composant <GTProvider>
.
Chargeur de traduction personnalisé
Vous pouvez utiliser la prop loadTranslations
pour charger des traductions depuis une source personnalisée.
C'est utile lorsque vous devez charger des traductions depuis une source différente, comme une API personnalisée.
Paramètres de rendu
Les paramètres de rendu contrôlent le comportement de chargement des traductions.
Il y a deux champs : timeout
et method
.
timeout
est le nombre de millisecondes à attendre pour charger une traduction avant d'afficher un contenu de secours (par défaut :8000ms
).method
est la méthode à utiliser pour charger les traductions ("skeleton"
,"replace"
ou"default"
).
Chaque paramètre de rendu dicte un comportement de chargement différent :
"skeleton"
retournera null
jusqu'à ce que les traductions soient chargées.
"replace"
retournera le contenu de secours jusqu'à ce que les traductions soient chargées.
"default"
retournera null
jusqu'à ce que les traductions soient chargées, sauf si la locale de secours a la même langue que la locale actuelle (par exemple, en-US
et en-GB
).
Dans ce cas, il retournera immédiatement le contenu de secours jusqu'à ce que les traductions soient chargées.
Notes
- Le
<GTProvider>
doit envelopper tous les composants<T>
et autres fonctions liées à la traduction. En savoir plus ici.