DEV Community

Altencir Junior
Altencir Junior

Posted on

Construindo uma Aplicação Multilíngue em React Native.

Desenvolvendo Aplicativos Multilíngues em React Native

Atualmente, é comum a necessidade de desenvolver aplicativos móveis multilíngues em diversos projetos. Neste artigo, vamos explorar como criar uma aplicação multilíngue utilizando o framework React Native. Utilizaremos bibliotecas populares, como react-i18next e i18n-js, para gerenciar as traduções e permitir a alternância entre diferentes idiomas.

Pré-requisitos

Antes de começar, é importante garantir que o ambiente do React Native esteja configurado corretamente em seu sistema. Isso inclui a instalação dos seguintes componentes:

  • Node.js
  • React Native CLI
  • Android Studio

Configurando o Projeto

Vamos começar criando um novo projeto React Native. Abra o terminal e execute o seguinte comando:

npx react-native init MultiLanguageApp
Enter fullscreen mode Exit fullscreen mode

Instalando as Dependências

Agora, vamos instalar as dependências necessárias para o suporte multilíngue. No terminal, execute o seguinte comando:

npm install i18n-js react-i18next
Enter fullscreen mode Exit fullscreen mode

Essas bibliotecas nos ajudarão a gerenciar as traduções e fornecerão os recursos necessários para alternar entre diferentes idiomas em nosso aplicativo.

Configurando as Traduções

Crie uma nova pasta chamada "locales" na raiz do projeto. Dentro dessa pasta, crie um arquivo "en.json" para as traduções em inglês e um arquivo "pt.json" para as traduções em português. Adicione o seguinte conteúdo aos arquivos:

en.json:

{
  "welcome": "Welcome to MultiLanguageApp!",
  "greeting": "Hello, {{name}}!"
}
Enter fullscreen mode Exit fullscreen mode

pt.json:

{
  "welcome": "Bem-vindo ao MultiLanguageApp!",
  "greeting": "Olá, {{name}}!"
}
Enter fullscreen mode Exit fullscreen mode

Configurando o Arquivo de Configuração de Tradução

Crie um novo arquivo chamado "i18n.js" na raiz do projeto. Adicione o seguinte conteúdo ao arquivo:

import i18n from 'i18n-js';

import en from './locales/en.json';
import pt from './locales/pt.json';

i18n.defaultLocale = 'en';
i18n.locale = 'en';
i18n.fallbacks = true;
i18n.translations = { en, pt };

export default i18n;
Enter fullscreen mode Exit fullscreen mode

Configurando a Interface do Usuário

Dentro do componente funcional App, importamos o hook useTranslation da biblioteca react-i18next. Esse hook nos permite acessar as funcionalidades de tradução em nosso aplicativo.

Em seguida, definimos uma variável de estado name usando o hook useState. Essa variável será utilizada para armazenar o nome inserido pelo usuário.

Dentro do componente, utilizamos o hook useTranslation para obter acesso às funções de tradução t e i18n. A função t é utilizada para traduzir as mensagens com base no idioma atualmente selecionado.

A seguir, temos dois componentes Text que exibem a mensagem de boas-vindas e o cumprimento. As mensagens são passadas para a função t para ser

Top comments (0)