我使用react-native开发了一个Android移动应用程序 . 我的应用程序的母语是英语,但我也希望用普通话提供 . 所以我的问题是如何将静态和获取的数据转换为普通话 . 请分享一个解决方案 .
是的,你可以做到 . 将应用程序语言更改为多语言应用程序,即包括普通话 .
react-native-i18n
链接:https://www.npmjs.com/package/react-native-i18n
google-translate-api
链接:https://www.npmjs.com/package/google-translate-api
I18n示例:
import I18n from 'react-native-i18n'; class Demo extends React.Component { render() { 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!', }, };
谷歌翻译示例:
From automatic language detection to English: const translate = require('google-translate-api'); translate('Ik spreek Engels', {to: 'en'}).then(res => { console.log(res.text); //=> I speak English console.log(res.from.language.iso); //=> nl }).catch(err => { console.error(err); }); From English to Dutch with a typo: translate('I spea Dutch!', {from: 'en', to: 'nl'}).then(res => { console.log(res.text); //=> Ik spreek Nederlands! console.log(res.from.text.autoCorrected); //=> true console.log(res.from.text.value); //=> I [speak] Dutch! console.log(res.from.text.didYouMean); //=> false }).catch(err => { console.error(err); });
希望能帮助到你..!谢谢
~Praz
您需要以某种方式重构代码库 .首先,如果您的静态数据存储为硬编码,则需要重构 .
我建议使用https://github.com/react-native-community/react-native-languages灵感的示例位于here .
现在是第二部分,您需要动态翻译 .
首先,您需要使用前面提到的包可访问的当前用户语言 .然后使用像google-translate-api这样的包来动态翻译 .
2 回答
是的,你可以做到 . 将应用程序语言更改为多语言应用程序,即包括普通话 .
react-native-i18n
链接:https://www.npmjs.com/package/react-native-i18n
google-translate-api
链接:https://www.npmjs.com/package/google-translate-api
I18n示例:
谷歌翻译示例:
希望能帮助到你..!谢谢
~Praz
您需要以某种方式重构代码库 .
首先,如果您的静态数据存储为硬编码,则需要重构 .
我建议使用https://github.com/react-native-community/react-native-languages
灵感的示例位于here .
现在是第二部分,您需要动态翻译 .
首先,您需要使用前面提到的包可访问的当前用户语言 .
然后使用像google-translate-api这样的包来动态翻译 .