0

我想在 angularjs 的配置阶段访问存储在 Cookie 中的值,我该怎么做?可能吗?我目前在 app.config(function(..., $translateProvider){...}) 中有以下代码,它工作得很好:

var defaultLang = 'de-DE';
var moduleName = { moduleName: 'UICaption.Resources' };

    $translateProvider.useLoader('customLocalizationLoaderFactory',
    {        
        moduleName, url: resourceUrl
    });

    $translateProvider.preferredLanguage(defaultLang);

我想在 app.config() 中实现类似(下面的代码)的东西,但我认为只有提供者在配置阶段被注册和访问,所以我应该如何通过 $cookies 服务或任何其他访问在配置阶段存储在 cookie 中的值方法:

 var defaultLang = $cookies.get('ASPNET_CULTURE' === 'de-DE') ? 'de-DE' : 'en-US';
    var moduleName = { moduleName: 'UICaption.Resources' };

    $translateProvider.useLoader('customLocalizationLoaderFactory',
    {
        moduleName, url: resourceUrl
    });

    $translateProvider.preferredLanguage(defaultLang);

请指导是否有其他相同的方法?

谢谢你。

4

1 回答 1

0

这个旧答案可能会对您有所帮助。

更一般地说,$cookies 是在 .run() 阶段检索的。我建议您在 .config() 中加载所有 $translate 部分和语言,并在 .run() 中使用 cookie 设置活动语言。

于 2017-05-15T10:01:22.507 回答