Vue.js中的国际化

Vue国际化的最佳做法是什么?

目前,我正在考虑使用一个包含所有字符串的'strings'对象,然后使用一些ajax魔术来基于json文件更新该字符串对象,并将json转换为某些语言。

有人有更好的主意吗?我目前在使用字符串方法时遇到一些麻烦,因为必须先加载字符串对象。

Vue中的字符串是否有占位符功能?例如,我有一个菜单,其条目位于我的vm数据中。有没有一种方法可以将其设置为静态字符串,然后在存在时自动将其绑定到另一个字符串?

乐千羽2020/03/12 16:33:30

您可能会读这篇文章 ...

我建议研究一下准备在不同框架中使用的i18n库,即i18next

还有一些vue库:即vue-i18next@ panter / vue-i18next

此外,您不仅应该考虑必须对代码(i18n)进行检测,才能翻译您的应用程序/网站。您还应该考虑流程-您将如何解决持续的本地化,如何跟踪进度等问题...

对于翻译管理+系统,您可能会例如。看一下locize,它可以在所有基于json的i18n框架中很好地发挥作用……并且比传统系统提供了更多功能。

西里Sam2020/03/12 16:33:30

VUE-i18n的插件是相当不错的。他们的文档遵循Vue文档设定的标准。该软件包也保持最新状态。我将从这里开始。

我喜欢的一件事是它们对单个文件组件的支持您可以使用特定于组件的翻译将附加标签添加到组件。以下是他们的文档中的示例:

<i18n>
{
  "en": {
    "hello": "hello world!"
  },
  "ja": {
    "hello": "こんにちは、世界!"
  }
}
</i18n>