Angular $ http,等到得到答案

时间:2016-10-12 15:16:50

标签: javascript angularjs

我有一个服务,它公开了一些使用$ http

执行的实用程序方法
// my service declaration
// $http gets injected

this.getName = function(){
   $http(options)
   .then(
      function(data){
         return data;
      }, 
      function(error){
         return 'some error';
      }
   );
};

this.getAge = function(){
   $http(options)
   .then(
      function(data){
         return data;
      }, 
      function(error){
         return 'some error';
      }
   );
};

在我的控制器中,我注入了这个服务,以便公开这些实用程序方法,例如:

// my controller declaration
var service = $injector.resolve('$myService');

然后,从这里我想调用实用程序方法,例如:

console.log(service.getName());

或做类似

的事情
if(service.getName() == ''){

}

问题在于,当我尝试这样做时,该方法启动异步HTTP调用并返回空,而稍后才返回答案。我该如何解决这个问题?

0 个答案:

没有答案