2012-03-24 64 views

回答

7

您需要做的第一件事就是创建包含所有本地化信息的哈希值,您总是将标识符与本地化字符串配对。

这里的最佳实践是创建一个把所有语言环境放到一个单独的文件中。 (如LOC-english.js)

Em.I18n.translations = { 
    'login.loginbutton': 'Login', 

}; 

当越来越加载你的web应用,请确保您加载字符串文件。所有的字符串必须在用第一个视图渲染之前加载。

实际使用很简单,你只需使用“T”助手在你的模板

<button class="login">{{t login.loginbutton}}</button> 

这将导致在登录

你可以找到更多信息:https://github.com/zendesk/ember-i18n/blob/master/README.md

+10

这部分对我来说工作正常 - 它计算出哪些Em.I18n.translations对象在运行时使用,这让我感到困惑。服务器应该弄清楚这一点,并包括正确的语言环境文件?如果是这样,那么如何提供一个“构建”js文件?不同的区域设置是否获得不同的生产构建文件? – pjmorse 2012-05-23 15:06:07

+0

尝试https://github.com/dockyard/ember-cli-i18n – RunLoop 2014-12-13 08:24:24