Socket
Socket
Sign inDemoInstall

react-native-simple-i18n

Package Overview
Dependencies
0
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    react-native-simple-i18n

Small i18n lib for react-native based on react-native-localize and i18n-js


Version published
Weekly downloads
2
decreased by-66.67%
Maintainers
1
Install size
309 kB
Created
Weekly downloads
 

Changelog

Source

2.0.0 (2020-05-04)

⚠ BREAKING CHANGES

  • update useI18n to useI18nProvider and useI18nContext to useI18n

Features

  • update hook's names (323062a)

Readme

Source

react-native-simple-i18n 🌎

Small i18n lib for react-native based on react-native-localize, i18n-js and lodash.memoize

Version Install Size Downloads PRs Welcome Commitizen friendly MIT License

Watch on GitHub Star on GitHub Tweet

This library was inspired by How to use React Native Localize in React Native apps (written by Aman Mittal) so please go and leave this guy some 👏.

Disclaimer: This library only supports translations, it does NOT support cultural settings (currency, dates, times, etc)

Getting Started

Peer Dependencies

Installation

npm install -S react-native-simple-i18n

How to use it

App.tsx
import React from 'react';
+ import { I18nProvider, useI18nProvider } from 'react-native-simple-i18n';
import ReduxProvider from 'src/components/ReduxProvider';
import Main from 'src/components/Main';

+ const messages = {
+   en: () => require('src/i18n/en.json'),
+   es: () => require('src/i18n/es.json'),
+   fr: () => require('src/i18n/fr.json'),
+ };

function App() {
+ const i18n = useI18nProvider(messages);
  return (
    <>
      <ReduxProvider>
+       <I18nProvider value={i18n}>
          <Main />
+       </I18nProvider>
      </ReduxProvider>
    </>
  );
}

export default App;
src/i18n/es.json
{
  "active": "Activo",
  "inactive": "Inactivo",
  "unknown": "Desconocido"
}
src/components/Main.tsx
import React from 'react';
import { Text, View } from 'react-native';
+ import { useI18n } from 'react-native-simple-i18n';

function Main() {
+ const { translate } = useI18n();
  return (
    <View>
      <Text>
+        {translate('active')}
      </Text>
    </View>
  );
}

export default Main;

License

MIT © jonathanpalma

Keywords

FAQs

Last updated on 04 May 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc