2015-12-04 40 views
0

我在使用角度指令(angucomplete-alt)生成建议列表时,我在ta字段中键入。我有一个问题,如果我使用下面的$ http进行请求,指令会拾取数据并显示它。Angularjs TypeError:无法读取未定义的属性“数据”

return $http.get(
      myurl, 
      { 
       params: { 
        code: strQuery.toUpperCase() 
       } 
      } 
     ); 

提示性地,如果我在承诺中返回数据,指令只是不断给我一个错误。我怎样才能得到这个工作正常,因为它好像即使我打电话同一个端点,我得到的方式不同的反应

return service.mymethod(strQuery) 
      .then(function(data) { 

       console.log(data); 

     }); 
+0

把服务的代码,否则我们不明白它在做什么 – Gianmarco

+0

你可能有一些'xx.data'行,其中'xx'是'undefined'。 – Hacketo

+0

给出更多的代码行,以便我们可以帮助您。 – katmanco

回答

0

虽然目前还不知道你正在努力实现这个什么叫单向服务:

var app = angular.module('myApp', []); 
app.controller('myController', function($http) { 
    $http.get(myUrl, { params: { code: strQuery.toUpperCase() }}) 
    .then(
    function (response, status) { // on success 
     console.log(response); 
    }, 
    function(error, status){ // on error 
     console.log(error); 
    }); 
}); 

$http.get返回承诺,这是一种处理异步操作的模式。承诺异步运行,并在完成处理时返回值(成功或错误)。

+0

感谢回到我家伙。我正在使用这个有角度的插件。 https://github.com/ghiden/angucomplete-alt,它有一个服务构建。我认为它已经在提出请求时返回一个承诺,这就是为什么我看到一些错误。 – Jimi

相关问题