Javascript 如何在Angular service中加载$cookies?

Javascript 如何在Angular service中加载$cookies?,javascript,angularjs,cookies,Javascript,Angularjs,Cookies,我已经定义了一个angular服务,我想在其中访问一些cookie。看看AngularJS的文档,似乎 而且,$cookies应该受到青睐。以下是我的服务的外观: 'use strict'; var lunchrServices = angular.module('lunchrServices', ['ngCookies']); lunchrServices.service('authService', ['$cookies', function ($cookies) { var u

我已经定义了一个angular服务,我想在其中访问一些cookie。看看AngularJS的文档,似乎 而且,
$cookies
应该受到青睐。以下是我的服务的外观:

'use strict';

var lunchrServices = angular.module('lunchrServices', ['ngCookies']);

lunchrServices.service('authService', ['$cookies', function ($cookies) {
    var user = $cookies.get('user') || null;

    this.login = function (userEmail) {
        user = userEmail;
        $cookies.put('user', userEmail)
    };
    this.logout = function () {
        user = null;
        $cookies.put('user', null);
    };
    this.currentUser = function(){
        return user;
    }

}]);
$cookies.get('user')
调用
TypeError:undefined不是一个函数。但是,如果我将
$cookies
的每个实例都更改为
$cookieStore
的话,它就可以正常工作(如下所示):

"严格使用",

var lunchrServices = angular.module('lunchrServices', ['ngCookies']);

lunchrServices.service('authService', ['$cookieStore', function ($cookieStore) {
    var user = $cookieStore.get('user') || null;

    this.login = function (userEmail) {
        user = userEmail;
        $cookieStore.put('user', userEmail)
    };
    this.logout = function () {
        user = null;
        $cookieStore.put('user', null);
    };
    this.currentUser = function(){
        return user;
    }

}]);

我想使用
$cookies
,但不明白为什么
$cookieStore
不能使用时它会失败。有什么想法吗?

我想这与文档中的这一行有关

中断更改:$cookies不再公开表示 当前浏览器cookie值。现在你必须使用 获取/放置/移除/等方法,如下所述

这可能意味着angular的早期版本在$cookies上没有这些方法


你的版本可能是旧版本。

Welp,那太尴尬了。今晚我的问题都是你问的。。。谢谢!:)