【问题标题】:React component to render localized text (props)React 组件渲染本地化文本(道具)
【发布时间】:2019-04-10 21:54:10
【问题描述】:

我正在尝试呈现来自 REST API 的本地化文本。假设道具看起来像(无论如何格式都可以更改):

"name": {
    "default": "Clock",
    "en": "Clock",
    "de": "Uhr"
}

并且输出应该是当前语言环境的文本。有没有一个组件能够做到这一点?

我在搜索“React 中的 i18n”时发现的只是库/模块/组件,它们可以从静态本地化文件呈现本地化文本。

【问题讨论】:

    标签: reactjs localization


    【解决方案1】:

    这取决于您当前如何处理定义当前语言环境。您可以创建自己的组件,例如RenderTextLocale,您可以将其连接到 Redux 或类似的状态管理工具,您可以在其中保存当前的语言环境。然后在调用此组件时,将整个文本对象传递给它:<RenderTextLocale text={name} />,并在组件内部将当前选择的语言环境解析为对象的属性,即如果当前语言环境是en,则渲染name['en']

    【讨论】:

    • 我认为有一个可以使用的组件。但你是对的。它很容易实现。谢谢。
    猜你喜欢
    • 2017-12-17
    • 2019-04-01
    • 2020-10-20
    • 1970-01-01
    • 1970-01-01
    • 2019-04-19
    • 2020-12-24
    • 2016-09-15
    • 2021-07-13
    相关资源
    最近更新 更多