在React Native中为i18n字符串添加属性

时间:2017-06-20 09:23:40

标签: react-native internationalization

我已经知道如何通过react-native-i18n生成i18n字符串。例如,

$(".show").click(function(){

并显示// en.js source { "hello": "Hello, {{name}}." } // use I18n.t("hello", { name: "John" })

我也知道如何生成属性字符串:

Hello, John.

并显示<Text> This is a <Text style={{fontWeight: 'bold'}}>bold<Text> word. <Text> This is a bold

问题是,如何将属性添加到i18n模板字符串?任何图书馆吗?

word
  • 预期:// en.js source { "hello": "Hello, <b>{{guest}}</b>. I'm {{host}}." } // use I18n.t("hello", { guest: "John", host: "Sam" }) Hello, John
  • 我得到了什么:. I'm Sam.

1 个答案:

答案 0 :(得分:1)

您可以使用react-i18next,它支持其翻译组件中的反应组件:

<div>{t('simpleContent')}</div>
<Trans i18nKey="userMessagesUnread" count={count}>
    Hello <strong title={t('nameTitle')}>{{name}}</strong>, you have {{count}} unread message. <Link to="/msgs">Go to messages</Link>.
</Trans>

还有更多...了解更多http://react.i18next.com