2016-09-24 4 views
0

스크립트는 JSON에서 필요한 값만 반환합니다. JSON의 이름 필요
다음은 입력 필드에 값을 입력 할 때 자동 제안을 생성합니다. 참조 : http://plnkr.co/edit/08vi4ncjLrWfUBjWrZKS?p=previewtypeahead 함수가 내 JSON에서 값을 반환하지 않습니다.

그러나,이 내 코드에서 어떤 JSON 값을 반환하지 않습니다

  <script> 
      var app = angular.module('myApp', ['ui.bootstrap']); 
      app.controller('myController', function($scope, $http){ 
       $scope.getAirport = function(inp){ 
        return $http.get('https://raw.githubusercontent.com/vedvasa/airports/master/airports.json', { 
         params: { 
         name : inp, 
         sensor : false 
         } 

        }).then(function(res){ 
         var names = []; 
         angular.forEach(response.data.records, function(item){ 
          names.push(item.addedNames); 
         }); 
         return names; 
         }); 
       }; 

         $scope.on_item_selected=function($item, $model, $label) 
         { 
          $scope.selected_item = $item; 
         } 
      }); 
      </script> 



      <div ng-app="myApp" ng-controller="myController"> 

       <form> 
        <input type="text" class="form-control" id="source" placeholder="Enter Airport Code or City Name" ng-model="asyncSelected" typeahead="name for name in getAirports($viewValue)" typeahead-loading="loadingAirports" typeahead-on-select="on_item_selected($item, $model, $label)"> 
       </form> 

      </div> 

답변

1

당신의 대신이 여전히 작동하지 wiould res

 <script> 
     var app = angular.module('myApp', ['ui.bootstrap']); 
     app.controller('myController', function($scope, $http){ 
      $scope.getAirport = function(inp){ 
       return $http.get('https://raw.githubusercontent.com/vedvasa/airports/master/airports.json', { 
        params: { 
        name : inp, 
        sensor : false 
        } 

       }).then(function(response){ // <---- I changed this to response 
        var names = []; 
        angular.forEach(response.data.records, function(item){ 
         names.push(item.addedNames); 
        }); 
        return names; 
        }); 
      }; 

        $scope.on_item_selected=function($item, $model, $label) 
        { 
         $scope.selected_item = $item; 
        } 
     }); 
     </script> 



     <div ng-app="myApp" ng-controller="myController"> 

      <form> 
       <input type="text" class="form-control" id="source" placeholder="Enter Airport Code or City Name" ng-model="asyncSelected" typeahead="name for name in getAirports($viewValue)" typeahead-loading="loadingAirports" typeahead-on-select="on_item_selected($item, $model, $label)"> 
      </form> 
+0

response를 사용하는 – jack

관련 문제