Sélecteur de langue et chargement différé des traductions
Créez un sélecteur de langue et chargez les ensembles de traductions à la demande pour réduire la taille initiale.
Sélecteur de langue et chargement différé des traductions est une leçon React Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage React Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours React Academy comprend 4 leçons au total.
Bienvenue
Sélecteur de langue simple
function LanguageSwitcher() {
const { i18n } = useTranslation();
return (
<div>
{['en', 'tr', 'fr'].map(lng => (
<button
key={lng}
onClick={() => i18n.changeLanguage(lng)}
style={{ fontWeight: i18n.language === lng ? 'bold' : 'normal' }}
>
{lng.toUpperCase()}
</button>
))}
</div>
);
}Conserver le choix de langue
i18n.init({
detection: {
order: ['localStorage', 'navigator'],
caches: ['localStorage'],
},
});Pourquoi charger les traductions à la demande ?
Configurer le serveur HTTP
import Backend from 'i18next-http-backend';
i18n.use(Backend).init({
backend: {
loadPath: '/locales/{{lng}}/{{ns}}.json',
},
ns: ['common', 'auth'],
defaultNS: 'common',
});Ajouter des fichiers de traduction
public/locales/
en/common.json
en/auth.json
tr/common.json
tr/auth.jsonAfficher un état de chargement pendant le changement de langue
const [switching, setSwitching] = useState(false);
const change = async (lng) => {
setSwitching(true);
await i18n.changeLanguage(lng);
setSwitching(false);
};Charger des espaces de noms à la demande
useEffect(() => {
i18n.loadNamespaces('dashboard');
}, []);CDN pour les traductions
backend: {
loadPath: 'https://cdn.example.com/locales/{{lng}}/{{ns}}.json',
}Paramètre régional dans l’URL
Vérification rapide
Récapitulatif
Cours terminé
Questions Fréquemment Posées
La leçon « Sélecteur de langue et chargement différé des traductions » est-elle gratuite ?
Oui — le texte complet de « Sélecteur de langue et chargement différé des traductions » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours React Academy, passe à CoddyKit PRO. Le cours React Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Sélecteur de langue et chargement différé des traductions » ?
Créez un sélecteur de langue et chargez les ensembles de traductions à la demande pour réduire la taille initiale. Tu pratiques React Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer React Academy ?
Aucune expérience préalable n'est requise. React Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Sélecteur de langue et chargement différé des traductions » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon React Academy ?
Oui. Chaque leçon React Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Configurer react-i18next
- Utiliser le hook useTranslation
- Pluralisation et interpolation
- Sélecteur de langue et chargement différé des traductions