您应该使用react-intl
进行调查。 Github
您可以指定不同的语言文件:使用FormattedMessage
en.json
{
"greeting": "Hello"
}
es.json
{
"greeting": "Hola"
}
然后你的组件中使用它们:
import { FormattedMessage } from 'react-intl';
...
<FormattedMessage id="greeting" />
React intl为您的应用程序提供了一个包装器,以允许指定不同的语言及其关联的消息。
ReactDOM.render(
<IntlProvider locale="en">
<App />
</IntlProvider>,
document.getElementById('app')
);
一个重要的注意,这不会对你进行翻译,但为您提供从基于指定locale
不同的语言文件拉动的方法。
如果你发现自己有一个非常大的语言文件,你可以将它分成不同的部分。例如,我可能有两个文件,home.json
和settings.json
,我可以设置访问为home.{unique_id}
或settings.{another_unique_id}
你应该使用https://github.com/yahoo/react-intl –
你不看看这个? i8ln反应或反应本地化带来大量资源。 – epascarello
我个人直接使用https://www.i18next.com,很高兴... – Leon