2014-03-03 46 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/之類的東西進行壓縮。

希望這能幫助你開始!