我正在研究需要國際化功能(將所有靜態字符串轉換爲用戶語言以及設置日期和貨幣格式)的單頁應用程序。Ember和國際化:請求最佳實踐和實施方法
我使用Ember.js,因此大多數靜態字符串都在html bocks中(模板或視圖中),或者在典型的Javascript消息中,比如「您確定要刪除...」(部分控制器文件)。
我正在尋找有關如何從應用程序中抽取所有這些字符串和其他語言環境特定位的最佳做法和經驗。
我主要看到一個問題,即用戶語言只有在登錄後才能確定。但是那個時候,完整的應用程序已經被加載(用英文),因此「重定向到」另一種語言是不可能的(除非在應用程序啓動時加載所有可能的語言的所有字符串 - 但這需要太多的數據在開始時加載)。
任何反饋都很好!
- 更新 -
我在此期間發現了,我可以使用字符串翻譯(https://github.com/jamesarosen/ember-i18n)餘燼,國際化庫。
但是我的主要問題仍然存在:如何在登錄後如何動態加載對應於所選語言或與用戶語言相對應的translation.js文件?
有沒有一種方法來存儲選定的語言,以便在下一次應用程序啓動時,應用程序使用正確的語言(因此在渲染UI之前加載正確的翻譯文件)。
希望有人能幫助。
Marc
請參考http://stackoverflow.com/questions/18065266/ember-dynamic-switch-to-choosen-language-using-i18n-library查看一個工作示例。 – cyclomarc