2014-03-03 48 views
1

Im新的i18n,当我在搜索栏中输入i18next是最好的结果。 我已经完成了关于i18n以及如何使用它的研究。但它仍然不清楚。我所知道的是,为了能够让您的网络应用程序可用于其他语言,您需要创建一个包含应用程序的键和值的json文件,并且您需要为i18n添加一个脚本。i18next的基本信息

其余仍然让我困惑。这听起来可能是一个愚蠢的问题,但我不知道它是如何工作的。

1)我不知道,但基于我的观察,你只为那些有价值或文本将在页面中显示的人创建一个json翻译。正确?在HTML文件中假设,我有一个文本,是不是标签或innerHTML的内部,例如:

<html> 
<body> 
**How are we going to translate this text? What key am I going to use?** 
</body> 
</html> 

什么我需要做的,这个文本翻译?

2)我们应该使用什么作为关键? ID?类?标签?因为我看到了不同的例子,它使用不同的任何这些例子。什么时候使用这些?

3)关于键值对,如果这对来自服务器会怎样?这是什么语法?

4)什么时候需要多线json?

回答

0

i18n是一个很大的话题,有很多解决方案取决于您尝试进行国际化/本地化的Web应用的类型。不幸的是,i18next的文档不是很好,它几乎没有任何教程。

也就是说,你可能最好看看i18next.js的github仓库中的示例应用程序:https://github.com/jamuhl/i18next/tree/master/sample/static。它确实给出了一些关于如何使用i18next替换HTML文本和本地化版本的例子。回答您的一些问题:

  1. 有几种方法可以做到这一点。示例脚本通过使用jQuery .text调用来替换大部分数据 - 如下所示:$('#MyHTMLID').text($.t('ns.common:MyLocalizedTextForMyHTMLID'));。 id为“MyHTMLID”内的任何HTML被替换的关键“MyLocalizedTextForMyHTMLID”本地化数据由i18next .T电话。

  2. 很多这些决定都只是惯例。保持简单,是一致的。

    在Web
  3. 通常应用程序中的JSON文件在服务器上,在你的HTML所在的目录的语言环境子目录。看看那个i18next例如对于它是如何布局。

  4. 当您第一次构建您的Web应用程序时,请使用多行json fi le能够排除故障。你可以稍后使用诸如http://jsonformatter.curiousconcept.com/之类的东西进行压缩。

希望这能帮助你开始!