2016-07-26 53 views
0

我已經設置cookie這樣的,是越來越正確顯示餅乾不能動態刷新 - AngularJS

$cookies.userName = $scope.userName; ($scope.username is a variable) 
$scope.userName = $cookies.userName; 

和HTML,

{{userName}} 

的餅乾價值。問題是,假設如果使用登錄用的用戶名 - AAA,餅乾被顯示aaa.

AAA註銷,當用戶BBB登錄,cookie的值仍然是aaa後,但是當我刷新頁面cookie值顯示爲bbb。但是這隻會發生刷新,在正常登錄時它會顯示以前的cookie值。

任何人都可以建議我一種方法來解決這個問題?

+0

在註銷時清除cookie。並在登錄時重新創建cookie,以防萬一任何頁面需要基於授權進行訪問。閱讀該cookie並基於該提供。 – Thennarasan

回答

-1

在您的登錄功能(只要ü點擊登錄)將$rootScope.login= 1;和您的登錄屏幕控制器上設置新的cookie地方 -

if ($rootScope.loin=== 1){ 
     window.location.reload(); 
    } 

後上面的代碼設置後烏爾範圍從cookie。

0

然後你可以使用

刪除$餅乾[ '用戶名'];

希望這回答你的問題,它取決於不同的版本。

+0

我試過$ cookies.remove('userName');它說 - $ cookies.remove不是一個函數。這是Cookie網址 - //ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.1/angular-cookies.min.js – JavaLearner1

+0

我已更新答案 –

+0

Cookie正在被刪除,但變量用戶名仍然顯示舊的cookie值和刷新顯示新的..我試圖使$ scope.username =「null」,但是當登錄的cookie值爲空也刷新獲取cookie值... – JavaLearner1