【发布时间】:2015-03-10 12:02:14
【问题描述】:
我已经定义了一个 Angular 服务,我想在其中访问一些 cookie。查看 AngularJS 文档,似乎$cookieStore is deprecated
并且应该支持$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;
}
}]);
在使用TypeError: undefined is not a function 调用$cookies.get('user') 时出错。但是,如果我将$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 不使用时失败。有什么想法吗?
【问题讨论】:
标签: javascript angularjs cookies