使用react native中的组件本地化字符串



我很乐意进行本地化,它运行得很好,但我遇到了一个问题,我想把所有内容放在一个字符串中,而不是把段落拆分成几个字符串:这是我想翻译的视图部分:

<View>
<BodyOne style={styles.text}>
By login into our app, you're accepting our{' '}
<Text style={styles.link} onPress={() => alert('terms')}>
terms and conditions
</Text>{' '}
and{' '}
<Text style={styles.link} onPress={() => alert('privacy')}>
Privacy Policy
</Text>
.
</BodyOne>

在我的en.json文件中,我试着把它放成这样:

{
"common": {
"test": "By login into our app, you're accepting our <Text style={styles.link} onPress={() => alert('terms')}>
terms and conditions</Text> and <Text style={styles.link} onPress={() => alert('privacy')}>
Privacy Policy</Text>.",
}

但这给了我一个";EOF错误";在世博会客户端。

如果可能的话,我的翻译函数是t('key'(。我如何将所有文本放入JSON中,并使翻译这些内容成为可能?

Ciao,不幸的是,您无法使用expo-localization, i18next<Text>放入翻译中。此库不解析像<Text>这样的react本机组件。也许是出于安全原因:允许这样的事情可能是有害的代码注入。但我不是安全专家,所以把我的最后一句话作为个人意见。

所以基本上我认为你的第一个解决方案是最好的。

最新更新