AngularJS: $cookies.remove 不是函数
AngularJS: $cookies.remove is not a function
我在尝试清除我的 angular 应用程序中的 cookie 时遇到错误 - “$cookies.remove 不是函数”。据我所知,我正在关注 angular 文档所说的内容,以及本论坛上关于删除 cookie 的内容。
这是处理此问题的我的服务,
app.service('authService', function ($cookies) {
this.SetUsername = function (username) {
$cookies.username = username;
}
this.GetUsername = function () {
return $cookies.username;
}
this.clearCookie = function(){
$cookies.remove("username");
}
});
get 和 set 函数都工作正常,只是在调用清除 cookie 函数时实际尝试删除 cookie 时我遇到了这个问题。
首先,您使用的 Angular.js 是哪个版本?在我看来,您似乎正在使用 1.3.x 这意味着 $cookies 实际上来自 ngCookies 插件。在这种情况下,$cookies 只不过是一个简单的对象,写入该对象会创建一个新的 cookie 值。直接从 1.3.x ngCookie 文档中引用 :
Only a simple Object is exposed and by adding or removing properties
to/from this object, new cookies are created/deleted at the end of
current $eval. The object's properties can only be strings.
Requires the ngCookies module to be installed.
如果您使用的是 1.4.x 及更高版本,您的实施实际上是正确的。
在您的页面中包含 angular cookie 文件。
Angular cookies 文件:-
<script src="https://code.angularjs.org/1.4.4/angular-cookies.js"></script>
注销时试试这个,它会一次清除所有 cookie
app.controller('controllername', function ($cookies) {
$cookies.remove();})
我在尝试清除我的 angular 应用程序中的 cookie 时遇到错误 - “$cookies.remove 不是函数”。据我所知,我正在关注 angular 文档所说的内容,以及本论坛上关于删除 cookie 的内容。
这是处理此问题的我的服务,
app.service('authService', function ($cookies) {
this.SetUsername = function (username) {
$cookies.username = username;
}
this.GetUsername = function () {
return $cookies.username;
}
this.clearCookie = function(){
$cookies.remove("username");
}
});
get 和 set 函数都工作正常,只是在调用清除 cookie 函数时实际尝试删除 cookie 时我遇到了这个问题。
首先,您使用的 Angular.js 是哪个版本?在我看来,您似乎正在使用 1.3.x 这意味着 $cookies 实际上来自 ngCookies 插件。在这种情况下,$cookies 只不过是一个简单的对象,写入该对象会创建一个新的 cookie 值。直接从 1.3.x ngCookie 文档中引用 :
Only a simple Object is exposed and by adding or removing properties to/from this object, new cookies are created/deleted at the end of current $eval. The object's properties can only be strings.
Requires the ngCookies module to be installed.
如果您使用的是 1.4.x 及更高版本,您的实施实际上是正确的。
在您的页面中包含 angular cookie 文件。
Angular cookies 文件:-
<script src="https://code.angularjs.org/1.4.4/angular-cookies.js"></script>
注销时试试这个,它会一次清除所有 cookie
app.controller('controllername', function ($cookies) {
$cookies.remove();})