2016-11-17 3 views
0

in meinem Controller Ich habe diesen Code, der einfach die logged_status bekommen.Winkelseitenumleitung, wenn der Rückgabewert falsch ist

app.controller('dashboardCtrl', function($scope, $stateParams, $http) { 
 
    $scope.displaySN = ''; 
 
    $scope.studentNumber = sessionStorage.getItem('student_number'); 
 
    $scope.get_logged_status = sessionStorage.getItem('logged_status'); 
 
    console.log("Dashboard Page Logged Status: " + $scope.get_logged_status); 
 

 
    if(!$scope.get_logged_status) 
 
    { 
 
    console.log('should redirect because false'); 
 
    }else{ 
 
    console.log('should stay because true'); 
 
    } 
 

 
})

es den richtigen Wert bekommen, aber wenn ich den Wert testen und eine bestimmte Aussage einzuloggen, im ein unerwartetes Ergebnis. im Bild unten, anstatt should redirect because false zu bekommen, weil $scope.get_logged_status Wert false ist, im im Erhalten des entgegengesetzten Resultats. Hilfe bitte. Codiere ich es falsch?

Bitte siehe Bild hier

enter image description here

Antwort

0

try this:

if($scope.get_logged_status=="false") 

vielleicht das Element logged_status im sessionStorage wird als string kein boolean, so ist es immer true zurück

0

Ich denke sessionStorage.getItem kehrt als zurück tring, so dass Ihre Zeichenfolge false tatsächlich true auswertet.

können Sie versuchen, if($scope.get_logged_status == 'false')

+0

mit Ich stelle es mit $ scope.logged_status = sessionStorage.setItem ('logged_status', true); – BlondePainter

+0

können Sie es bitte bestätigen – BlondePainter

+0

ah ja, es gibt String console.log zurück (typeof $ scope.get_logged_status); – BlondePainter

Verwandte Themen