2013-08-20 70 views
2

做服務器端的HTML模板渲染我發現自己使用Java的Locale類(通過各種幫助函數)來渲染語言代碼(ISO 639- 1),腳本代碼(ISO 15294)和國家代碼(ISO 3166)作爲其名稱(即「en」 - >「English」),以尊重當前用戶所選區域的方式。JavaScript的Java語言環境包或客戶端渲染語言/腳本/國家代碼的方法

現在,移動一些東西到客戶端渲染(與Angular JS),我有點不確定如何解決這個問題。在服務器端進行代碼到名稱的轉換併發送支持語言環境的JSON是一種選擇,但它會增加很多複雜性,以至於各種數據位如何得到JSON化(通過必須通過大量圖層來傳遞區域設置主要是)

另一方面,我可以看到Java Locale類的完整客戶端版本會如何向客戶端發送大量數據,其中大部分數據不會被最常用的時間。

是否有任何新興的最佳做法來做這種東西,主要是單頁面應用程序,或者任何超級庫能夠很好地解決我的問題?

回答

0

我不確定這是否是「最佳做法」,但我也開發了一個單頁應用程序,其中我加載了帶有有用JS數據的JSON數組並加載了ajax。這對我來說似乎是最好的解決方案,如果數據在頁面的開頭沒有正確使用。

否則,你可能只是在每一頁的末尾添加這個腳本,如果你不介意嵌入的JavaScript:

<script> 
function get_locale(){ 
    return JSON.parse(/* render JSON.encoded data from server here */) 
</script> 

很抱歉,如果這不是真的一個明確的答案。

相關問題