i18next-react-native-async-storage

This plugin caches your user's language in React Native's Async storage

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
i18next-react-native-async-storage
2111.0.42 years ago4 years agoMinified + gzip package size for i18next-react-native-async-storage in KB

Readme

i18next React Native Async Storage
This plugin caches your user's language in React Native's Async storage

Getting Started

Install using:
yarn install i18next-react-native-async-storage

Then pass it to your i18n instance
import AsyncStoragePlugin from 'i18next-react-native-async-storage'

i18n
  .use(AsyncStoragePlugin())

Fallback mechanism

You can pass a fallback function or language to the plugin in case it fails to find the user's language in the local storage (typically on the app's first run):
// With a fallback language
i18n
  .use(AsyncStoragePlugin('en'))

// With a fallback function
const detectUserLanguage = (callback) => {
  return Expo
    .DangerZone
    .Localization
    .getCurrentLocaleAsync()
    .then(lng => { callback(lng.replace('_', '-')); })
}

i18n
  .use(AsyncStoragePlugin(detectUserLanguage))