AngularJS翻译:更改默认语言名称

时间:2015-07-22 21:16:34

标签: javascript angularjs angular-translate

今天在我的应用程序之前,我有:

app.config(['$translateProvider', function ($translateProvider) {
  $translateProvider.translations('en', {});

  $translateProvider.translations('ru', {});

  $translateProvider.preferredLanguage('en');

  $translateProvider.useLocalStorage();
}]);

但现在我有:

app.config(['$translateProvider', function ($translateProvider) {
  $translateProvider.translations('English', {});

  $translateProvider.translations('Russian', {});

  $translateProvider.preferredLanguage('English');

  $translateProvider.useLocalStorage();
}]);

所以我的语言键已更改。

但!

当我打开带有旧localStorage(en)值的窗口选项卡时 - 我的新字符串不会被翻译,只有在私有浏览器模式下,当缓存是干净的时候。

因此我需要以某种方式检查:如果密钥为en,则将其替换为English

主要的问题是这个服务不使用$ localStorage,而是它自己的本地存储解决方案。

如何解决?

我只有这样的想法:

  if ($translate.storage().get() === 'en'){
    $translate.storage().set('NG_TRANSLATE_LANG_KEY', 'English');
  }
  if ($translate.storage().get() === 'ru'){
    $translate.storage().set('NG_TRANSLATE_LANG_KEY', 'Russian');
  }

0 个答案:

没有答案
相关问题