2017-04-13 9 views
0

私のデータベースにリクエストしていますが、それはうまく戻りましたが、別のリクエストでもう一度反復処理できるように配列に格納したいと思っています。しかし、私は自分のコードで配列の長さにアクセスすることができないので、私はそれを行うことはできません。コントローラの配列を反復するjavascript

'use strict' 
var myApp = angular.module('dashApp', []); 

var availiable = []; 

myApp.controller('dashCtrl', ['$scope', '$http', function($scope, $http) { 

    var getavailable = function() { 
     $http.get('/availableList').success(function(response) { 
      for (var i = 0; i < response.length; i++) { 
      var av = new Object(); 
      av.Building = response[i].BuildingName; 
      av.Townhall = response[i].Townhall; 
      availiable.push(av); 
      } 
     }; 

     var main = function(req, response) { 
      getavailable(); 
      console.log(availiable); 
      console.log(avInt); 
      for (var i = 0; i < availiable.length; i++) { 
      console.log("in forloop"); 
      var count = getCount(availiable[i]); 

      } 
      $scope.BuilingList = $scope.finalList; 
      $scope.finalList = ""; 

     }; 

     main(); 

     }]); 
+0

応答の中には何が表示されますか? – Sajeetharan

+0

私のJsonクエリーからObjectの配列を取得しましたが、これは配列availiable fineに設定されていますが、availiable.lengthは何も生成しません。 –

+1

'$ http'は**非同期です** ...前にデータにアクセスしようとしています受け取った。 – charlietfl

答えて

0

でもこれが正常に動作する必要がありますループ

ためを使用する必要はありません。

$http.get('/availableList').success(function(response) { 
    available = response.data; 
    ....