loginService.islogged()
Die obige Funktion gibt eine Zeichenfolge wie "fehlgeschlagen" zurück. Wenn ich jedoch versuche, die Funktion auszuführen, wird der Fehler von zurückgegeben
TypeError: Cannot read property 'then' of undefined
und der Cursor wird direkt nach connected
und vor angezeigt .then
.
Unten ist die volle Funktion:
var connected=loginService.islogged();
alert(connected);
connected.then(function(msg){
alert("connected value is "+connected);
alert("msg.data value is "+msg.data);
if(!msg.data.account_session || loginService.islogged()=="failed")
$location.path('/login');
});
AKTUALISIEREN
Hier ist die islogged()
Funktion
islogged:function(){
var cUid=sessionService.get('uid');
alert("in loginServce, cuid is "+cUid);
var $checkSessionServer=$http.post('data/check_session.php?cUid='+cUid);
$checkSessionServer.then(function(){
alert("session check returned!");
console.log("checkSessionServer is "+$checkSessionServer);
return $checkSessionServer;
});
}
Ich bin sicher, dass $checkSessionServer
dies zu einer "fehlgeschlagenen" Zeichenfolge führen wird. Nichts mehr.
msg
- das sollte ein Versprechen zurückgeben.
undefined
, dann islogged()
ist eigentlich return
kein Wert. Die Definition von islogged()
wäre wahrscheinlich die Quelle Ihrer Probleme.
promise
hier.