注入$ cookieStore Angularjs时出现未捕获错误

时间:2016-05-24 12:20:27

标签: javascript angularjs

我已经在angularjs中创建了一个服务,这对我来说似乎很好但是当我向服务中注入$ cookieStore时它给了我一个未被捕获的错误,我不知道为什么会这样。

错误:

angular.js:36Uncaught Error: [$injector:unpr] http://errors.angularjs.org/1.2.16/$injector/unpr?p0=%24%24cookieReaderProv…ieReader%20%3C-%20%24cookies%20%3C-%20%24cookieStore%20%3C-%20loginService

服务档案:

myApp.factory('loginService',  ['$q','$http','API_SERVER','$cookieStore',function ($q, $http, API_SERVER,$cookieStore) {
         var login = function(username,passowrd){
         // some code
    },

         var logout = function(username,passowrd){
          //some code
    }


         return {

                    login: function (username, password) {
                        return login(username, password);
                    },

                    logout: function (username, token) {
                        return logout(username, token);
                    },

                };

            }]);

如果我删除$ cookieStore,那么它可以正常工作。但是包含上面的代码会引发错误。此外,如果我将$ scope添加到服务中,则会抛出未被捕获的错误。

app.js:

var myApp = angular.module('myApp', ['ngRoute',
    'ui.bootstrap',
    'ngCookies',
    'ngResource',
    'ngSanitize',
])

的index.html     

<script src='{% static "js/angular.min.js" %}'></script>
<script src='{% static "js/ui-bootstrap-tpls-0.11.2.min.js" %}'></script>
<script src='{% static "js/angular-route.min.js" %}'></script>
<script src='{% static "js/angular-animate.min.js" %}'></script>
<script src='{% static "js/angular-resource.min.js" %}'></script>
<script src='{% static "js/angular-cookies.min.js" %}'></script>
<script src='{% static "js/angular-sanitize.min.js" %}'></script>

2 个答案:

答案 0 :(得分:1)

可能是版本不匹配。确保所有角度JS模块都匹配。 (请发布angular-cookies&amp; angular的版本)。据说你说你使用1.5x,但你的错误显然是1.2.x

- 原始答案:

您应该注射$cookies$cookieStore

$cookies的文档。 $cookieStoredeprecated

答案 1 :(得分:0)

Angular 1.5.6(最新角度1):

  

注意:不推荐使用$ cookieStore服务。请使用$ cookies   服务而不是。

https://docs.angularjs.org/api/ngCookies/service/$cookieStore