Seletor de idioma e carregamento sob demanda de traduções
Crie um alternador de localidade e carregue pacotes de tradução sob demanda para reduzir o tamanho inicial.
Seletor de idioma e carregamento sob demanda de traduções é uma aula grátis de React Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de React Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de React Academy inclui 4 aulas no total.
Boas-vindas
Seletor de idioma simples
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>
);
}Persistindo a seleção de idioma
i18n.init({
detection: {
order: ['localStorage', 'navigator'],
caches: ['localStorage'],
},
});Por que carregar traduções sob demanda?
Configurando o back-end HTTP
import Backend from 'i18next-http-backend';
i18n.use(Backend).init({
backend: {
loadPath: '/locales/{{lng}}/{{ns}}.json',
},
ns: ['common', 'auth'],
defaultNS: 'common',
});Adicionando arquivos de tradução
public/locales/
en/common.json
en/auth.json
tr/common.json
tr/auth.jsonExibindo um estado de carregamento durante a troca de idioma
const [switching, setSwitching] = useState(false);
const change = async (lng) => {
setSwitching(true);
await i18n.changeLanguage(lng);
setSwitching(false);
};Carregando espaços de nomes específicos sob demanda
useEffect(() => {
i18n.loadNamespaces('dashboard');
}, []);CDN para traduções
backend: {
loadPath: 'https://cdn.example.com/locales/{{lng}}/{{ns}}.json',
}Localidade na URL
Verificação rápida
Recapitulação
Curso concluído
Perguntas Frequentes
A aula “Seletor de idioma e carregamento sob demanda de traduções” é grátis?
Sim — o texto completo de “Seletor de idioma e carregamento sob demanda de traduções” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de React Academy, atualize para CoddyKit PRO. O curso de React Academy inclui 4 aulas no total.
O que vou aprender em “Seletor de idioma e carregamento sob demanda de traduções”?
Crie um alternador de localidade e carregue pacotes de tradução sob demanda para reduzir o tamanho inicial. Você pratica React Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar React Academy?
Nenhuma experiência prévia é necessária. React Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Seletor de idioma e carregamento sob demanda de traduções”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de React Academy?
Sim. Cada aula de React Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Configurando o react-i18next
- Usando o hook useTranslation
- Pluralização e interpolação
- Seletor de idioma e carregamento sob demanda de traduções