@nxt-demo/lib-i18n v1.0.8
lib-i18n
A biblioteca da i18n da Nexti é uma extensão do react-i18next, um poderoso framework de internacionalizaçcão para React, que é baseado no i18next.
Além de todas as possibilidades referentes ao react-i18next, esse biblioteca já fornece diversas frases e palavras internacionalizadas. As línguas disponíveis são: pt-BR (Português do Brasil), en (Inglês) e es (Espanhol).
Vejamos abaixo um exemplo simples de como utilizar uma instância pronta da biblioteca.
import i18nInstance, { useTranslation } from '@nxt-demo/lib-i18n'
...
function App(){
const { i18n } = useTranslation()
return (
<h1>{t('title')}</h1>
)
}
...
Utilizando métodos da react-i18next
Como foi possível observar no exemplo anterior através do hook useTranslation, podemos utilizar todos os métodos fornecidos pela biblioteca react-i18next, podendo os mesmos serem consultados em sua documentação oficial.
Atualmente, utilizamos a versão 11.11.4 do react-i18next.
Métodos personalizados
Nossa biblioteca possui uma vasta lista de palavras e frases internacionalizadas que possivelmente vão acelerar consideravelmente o seu tempo de desenvolvimento. Todavia, sabemos que não podemos abranger todos os casos possíveis, por isso preparamos um método para que você possa adicionar novos recursos, e ao mesmo tempo aproveitar os que já deixamos pronto para você.
Vejamos abaixo um exemplo de como criar uma instância personalizada.
import { createI18n, I18nextProvider } from '@nxt-demo/lib-i18n'
const i18n = createI18n({
en: {
translation: {
helloWorld: 'Hello World'
}
},
es: {
translation: {
helloWorld: 'Hola Mundo'
}
},
'pt-BR': {
translation: {
helloWorld: 'Olá Mundo'
}
},
})
...
function Providers(){
return (
<I18nextProvider i18n={i18n}>
<App />
</I18nextProvider>
)
}
...