loginService.islogged()
上面的函数返回类似“ failed”的字符串。但是,当我尝试运行然后对其执行功能时,它将返回以下错误
TypeError: Cannot read property 'then' of undefined
并且光标指示在connected
之前和之后.then
。
以下是全部功能:
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');
});
更新
这是islogged()
功能
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;
});
}
我确定$checkSessionServer
将会导致“失败”字符串。而已。
获得什么需要得到什么
—
Daniel A. White
msg
-应该返回承诺。
如果错误是关于
—
乔纳森·洛诺夫斯基
undefined
,则islogged()
实际上return
不是值。的定义islogged()
可能是问题的根源。
在某些情况下,可能是您的islogged方法未返回值。之后,我看到您没有将islogged用作异步方法,因此它可能根本不返回promise。
—
安德烈·考林
@Jonathan Lonowski我刚刚发布了islogged函数。希望能带来更多的见识。
—
Ezeewei
promise
这里没有。