index.js 776 B

12345678910111213141516171819202122232425262728
  1. import i18n from 'i18next';
  2. import { initReactI18next } from 'react-i18next';
  3. import * as RNLocalize from 'react-native-localize';
  4. // 导入语言包
  5. import en from './lang/en';
  6. import zh from './lang/zh';
  7. // 获取设备支持的语言
  8. const fallbackLanguage = { languageTag: 'en', isRTL: false };
  9. const { languageTag } = RNLocalize.findBestAvailableLanguage(['en', 'zh']) || fallbackLanguage;
  10. // 初始化 i18n
  11. i18n
  12. .use(initReactI18next) // 将 i18n 传递给 react-i18next
  13. .init({
  14. resources: {
  15. en: { translation: en },
  16. zh: { translation: zh },
  17. },
  18. lng: languageTag, // 设置初始语言
  19. fallbackLng: 'en', // fallback 语言
  20. interpolation: {
  21. escapeValue: false, // react 已经处理了 XSS
  22. },
  23. });
  24. export default i18n;