Angular JS未知提供程序错误-$ cookieStoreProvider

时间:2019-05-06 18:04:32

标签: javascript angularjs

我正在研究角度应用程序。这是在Windows上可以正常工作的应用程序。 现在我切换到mac并尝试构建相同的文件,但是在构建后,当我在浏览器上打开应用程序时,它会抛出控制台错误:未捕获的错误:[$ injector:unpr]

  

https://code.angularjs.org/1.7.8/docs/error/$injector/unpr?p0=$cookieStoreProvider%20%3C-%20$cookieStore

这是app.js:

 angular
        .module('xyz', [
            'ui.router',
            'Commons' ,
            'ngCookies',
            'ngMask',
            'ui.bootstrap.datetimepicker',
            'btorfs.multiselect',
            'oitozero.ngSweetAlert'
        ])
        .constant('GLOBAL_CONSTANTS', {
        })
        .config(['$urlRouterProvider', '$httpProvider', '$stateProvider', initializeConfigurationPhase])
        .run(['$rootScope', '$cookieStore', 'httpService', 'notificationService', initializeRunPhase]);

function initializeRunPhase($rootScope, $cookieStore, httpService, notificationService) {
    $rootScope.currentItem = 0;
    $rootScope.baseUrl = "someurl";
    // $rootScope.baseUrl = "http://localhost";
    $rootScope.loggedIn = false;
    if($cookieStore.get('access_token')) {
        $rootScope.loggedIn = true;
        notificationService.connect();
    }


    if(!$cookieStore.get('userCountryCode')) {
        fetchUserCountry();
    } else {
         $rootScope.userCountryCode = $cookieStore.get('userCountryCode');
    }
    function fetchUserCountry () {
        httpService.getWithoutData(url, true).then(function(response){

            $cookieStore.put('userCountryCode',response.country_code);
            $cookieStore.put('city',response.city);
            $cookieStore.put('region_name',response.region_name);
        });
    }

}

让我知道我是否缺少某些东西或做错了什么。

1 个答案:

答案 0 :(得分:2)

@Petr Averyanov已经说过,$ cookieStore已从angular 1.6弃用 看起来here

  

$ cookieStore现在已弃用,因为所有有用的逻辑都已移动   到$ cookies,现在$ cookieStore只需将调用委托给它即可。

安装angular 1.5,就不会出现该错误