我有一个注销功能,如何通过清除所有存储的变量来注销?
$scope.logout=function(){
$state.go('app.login');
}
但我的要求是根本就没有去到登录页面,我想去除去我使用服务存储的所有变量和饼干到登录页面,我不想过去用户的任何实例,我应该怎么做? 我想成为一个刷新,但不要使用刷新。
我有一个注销功能,如何通过清除所有存储的变量来注销?
$scope.logout=function(){
$state.go('app.login');
}
但我的要求是根本就没有去到登录页面,我想去除去我使用服务存储的所有变量和饼干到登录页面,我不想过去用户的任何实例,我应该怎么做? 我想成为一个刷新,但不要使用刷新。
只需根据需要在.state
路由中设置cache:false
即可。
您可能想要考虑使用服务来处理您的身份验证。例如,创建一个名为AuthenticationService
的服务,您可以在其上创建以下方法。
.service("AuthenticationService", ["$state", function ($state) {
this.clearSession = function(){
// write your code to clear variables you mentioned in your question
}
this.doLogout = function($state){
this.clearSession();
$state.go('app.login');
}
return {
clearSession: this.clearSession,
doLogout: this.doLogout
}
});
然后,当你需要在你的应用程序注销,只需调用AuthenticationService.doLogout
。
编辑:不知道为什么这是downvoted,已经提供给用户一个基于他的质量差的问题的解决方案。
您正在使用哪种类型的身份验证?它是如何建立的? – JanR
您的问题未提供足够的信息予以解答。请添加详细代码.... –
根据您的查询与更新答案已经存在的问题“擦除”,但如何?您需要更新您用于存储Cookie的代码或插件,或者您可以在调用函数时找到清除cookie或清除本地存储或删除windows.localstorage的文档。通常,您需要找到一个命令来清除并执行它注销功能 – Prasad