2016-05-01 4 views
-1

ファクトリIsLoggedInの中でファンクションをコールし、そのファンクションの結果を使用したいとします。ファンクションからの結果を返すためのHTTPコールの待機

factory.IsLoggedIn = function() { 
    var token = $cookies.get('token'); 
    LoginFactory.get({token: token }, 
    funtion(data){ 
      return true; 
    },funtion(data){ 
      return false; 
    })) 
} 
私のコントローラで

if(factory.IsLoggedIn()) 
{ 
     //Do something 
} 

これは明らかにfactory.IsLoggedIn(として動作しません)HTTPは約束を返す前に値を返します。私が欲しいものを達成する方法はありますか?

答えて

2

確か:

factory.IsLoggedIn = function() { 
    var token = $cookies.get('token'); 
    return LoginFactory.get({token: token }, 
    funtion(data){ 
      return true; 
    },funtion(data){ 
      return false; 
    })) 
} 

そして工場で:

factory.IsLoggedIn().then(function(isLogged){ 
if (isLogged) { 
    // Do Something 
} 
}); 

説明は次の通りです。 戻る約束する必要がありますので、コントローラまたは約束どおりに使用することができます。

関連する問題