离线使用 i18next 来响应本机

Using i18next offline for react native

我们正在构建一个 React Native 应用程序,我们的客户希望我将其翻译成其他语言。

我们的计划是使用 i18next 无论如何我们都必须保持离线...我可以离线使用 i18next 来响应原生吗?

谢谢, 维涅什

是的,您可以,实际上您可以将所有翻译文件与代码“捆绑”在一起。这样,您将不会有任何 http 请求。

import i18next from 'i18next';
import enTranslations from '../path/to/locales/en/translations.json';
import deTranslations from '../path/to/locales/de/translations.json';

i18next.init({
  lng: 'en',
  debug: true,
  resources: {
    en: {
      translation: enTranslations  // <---- your english translations
    },
    de: {
      translation: deTranslations
    }
  }
}, function(err, t) {
  // initialized and ready to go!
  document.getElementById('output').innerHTML = i18next.t('key');
});

对于更高级的解决方案,您可以围绕 react-native-fs it should look similar to i18next-fs-backend 编写一个 i18next 后端。 (我自己没有尝试过这个选项)