Javascript 如何在Angular service中加载$cookies?
我已经定义了一个angular服务,我想在其中访问一些cookie。看看AngularJS的文档,似乎 而且,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
$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,那太尴尬了。今晚我的问题都是你问的。。。谢谢!:)