I18n 在 ReactJs 应用程序中非常大规模



你有在非常大的 react 应用程序中实现内部化/本地化的经验吗?

我们正在谈论数千个字符串和一些~20种语言在浏览器中加载所有内容不是一个好主意:)所以应该在服务器端完成。但我不确定即使为一种语言发送整个文件(例如en_US的所有翻译(也是一个好主意。

有没有一个选项可以实现从这样的翻译 json 中仅获取服务器端nestedStrings

{
  topLevel : "a",
  topLevel2 : "b",
    nestedProperty : {
        someting : "C"
    }

还是我应该编写自定义解决方案?

您可以使用 react-i18next (https://github.com/i18next/react-i18next(,如评论中所述,以及:

  • 您可以拆分每个模块的翻译,例如进行代码拆分(所有这些都已经存在 - 无需额外的工作(
  • 如果需要,i18next 也可以在大多数服务器 env 上运行:https://www.i18next.com/supported-frameworks.html(并非所有都可以/应该在客户端中完成(
  • 奖励:在这个规模上,您将需要一个跟上您开发的翻译管理工具 ->有来自同一团队的 https://locize.com,可以实现惊人的工作流程 ->查看自动将内容添加到翻译项目、上下文编辑的示例......https://github.com/i18next/react-i18next/tree/master/example/locize-example(自述文件中的视频链接(

最新更新