有没有办法在反应本机应用程序中实现某种自动翻译?

Is there a way to implement some sort of auto translation in an react native app?

我知道这不是 google,但我找不到任何有用的东西,也许你可以给我一些建议。

我正在寻找的是在我的 React Native 应用程序中为字符串添加自动翻译的方法。

现在我正在使用一种变通方法,其中我手动翻译了一些最常见的单词 - 因为这没有涵盖整个语言,所以结果看起来很不令人满意:)

你可以使用 react-native-i18n.

var I18n = require('react-native-i18n');

var Demo = React.createClass({
  render: function() {
    return (
      <Text>{I18n.t('greeting')}</Text>
    )
  }
});

// Enable fallbacks if you want `en-US` and `en-GB` to fallback to `en`
I18n.fallbacks = true;

I18n.translations = {
  en: {
    greeting: 'Hi!'
  },
  fr: {
    greeting: 'Bonjour!'
  }
}

使用设备信息获取用户 phone OS 语言

https://www.npmjs.com/package/react-native-device-info#getdevicelocale

或使用

I18n = require('react-native-i18n') locale = I18n.currentLocale()

然后使用电源转换器

https://www.npmjs.com/package/react-native-power-translator

//在应用程序启动时将您的设备语言设置为Target_Language

TranslatorConfiguration.setConfig('Provider_Type', 'Your_API_Key','Target_Language', 'Source_Language');

//填写自己的详细信息

TranslatorConfiguration.setConfig(ProviderTypes.Google, 'xxxx','fr');

作为组件使用

<PowerTranslator text={'Engineering physics or engineering science refers to the study of the combined disciplines of physics'} />

附加组件: 使用 redux store 或 async storage 在第一次应用程序启动时存储所有字符串。 然后使用商店或存储中的翻译文本。 IT 将节省您的 api 账单,因为您有固定的字符串。