在我的 ember 应用程序中,我支持不同的语言。我这样做是这样的:
这是一部分index.html
:
<script src="scripts/vendor/ember.js"></script>
<script src="scripts/vendor/ember-i18n.js"></script>
...
<script>window.mynamespace = {};</script>
<script src="scripts/languages/en.js"></script>
<script src="scripts/ember_application.js"></script>
在我的配置中,我按照ember-i18nlanguages/es.js
的预期配置了一个翻译对象:
var lang = {
key1 : 'Translation1',
...
};
window.mynamespace.lang = lang;
现在在我的 Ember 应用程序中,我可以执行以下操作:
Ember.I18n.translations = window.mynamespace.lang;
var App = Ember.Application.createWithMixins({...});
我有三个问题:
- 是否有另一种提供多语言页面的方法?具体来说,我不太喜欢使用
window.mynamespace
,但在创建我的 ember 应用程序之前我不知道如何共享这些设置。 - 例如
scripts/languages/es.js
,如何根据浏览器中的语言首选项设置(在 HTTP 请求中)提供不同的语言文件? - 而这个更困难:我如何根据数据库设置(属于我的应用程序的用户配置文件)提供不同的语言文件?此设置将覆盖 HTTP 请求中的*语言首选项设置。