2016-03-08 42 views
-1

我有一個註銷功能,如何通過清除所有存儲的變量來註銷?

$scope.logout=function(){ 
    $state.go('app.login'); 
    } 

但我的要求是根本就沒有去到登錄頁面,我想去除去我使用服務存儲的所有變量和餅乾到登錄頁面,我不想過去用戶的任何實例,我應該怎麼做? 我想成爲一個刷新,但不要使用刷新。

+1

您正在使用哪種類型的身份驗證?它是如何建立的? – JanR

+1

您的問題未提供足夠的信息予以解答。請添加詳細代碼.... –

+0

根據您的查詢與更新答案已經存在的問題「擦除」,但如何?您需要更新您用於存儲Cookie的代碼或插件,或者您可以在調用函數時找到清除cookie或清除本地存儲或刪除windows.localstorage的文檔。通常,您需要找到一個命令來清除並執行它註銷功能 – Prasad

回答

0

只需根據需要在.state路由中設置cache:false即可。

0

您可能想要考慮使用服務來處理您的身份驗證。例如,創建一個名爲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,已經提供給用戶一個基於他的質量差的問題的解決方案。

相關問題