如何记住浏览器刷新时的ember-i18n语言选择

时间:2015-07-17 15:24:47

标签: ember.js ember-i18n

我在我的应用程序控制器中首先尝试了类似的东西:

init123: function() {
  var locale;
  if (this.session.get('lang') === null || this.session.get('lang') === undefined)
    locale = ENV.i18n.defaultLocale;
  else
    locale = this.session.get('lang');

  this.get('i18n').set('locale', locale);
}.on('init'),

但这仅在用户登录时有效。如果没有,则始终设置默认值。

然后我尝试使用initalizer,就像这个答案一样。

来自Artych的

How to set the i18n.locale from within an initializer

但我怎么记得在浏览器中完成的最后一个选择?

THX

2 个答案:

答案 0 :(得分:1)

您需要在某处保留偏好。请查看ember-localforage-adapterember-local-storage个包。

答案 1 :(得分:1)

如果您使用的是ember-simple-auth,则可以将其保存到会话中。