2016-03-30 21 views
-1

Ich möchte ein Array aus den Daten erstellen, die ich von API erhalte. Allerdings zeigt es mir den Fehler cannot read property 'push' of undefined Javascript.Eigenschaft 'push' von undefined nicht gelesen AngularJS

Kann mir jemand den Ausweg zeigen? Hier

ist der Code:

myService.getData().then(function (res) { 
      $scope.resoureceGroupsRawData = res.data; 
      //declare an array already... 
      $scope.resourceGroupItems = new Array(); 

     }, function(error) { 
      throw error; 
     }).then(function() { 
      _.forEach($scope.resoureceGroupsRawData, function(text, idx) { 
       var item = {}; 
       item.id = idx++; 
       item.label = text; 
       //why it says resourceGroupItems is null? 
       $scope.resouceGroupItems.push(item); 
      }); 
     }, function(err) { 

     }); 
+0

Sie fehlen das zweite "r" aus 'resouceGroupItems' in der Zeile, die den Fehler enthält. –

Antwort

1

Fehler bro, Sie in wenigen Orten Ressourcen mispelled.

myService.getData().then(function (res) { 
      $scope.resourceGroupsRawData = res.data; 
      //declare an array already... 
      $scope.resourceGroupItems = new Array(); 

     }, function(error) { 
      throw error; 
     }).then(function() { 
      _.forEach($scope.resourceGroupsRawData, function(text, idx) { 
       var item = {}; 
       item.id = idx++; 
       item.label = text; 
       //why it says resourceGroupItems is null? 
       $scope.resourceGroupItems.push(item); 
      }); 
     }, function(err) { 
      //TODO need add error page here 
     }); 
+0

welcher Tipp ??? kannst du angeben? – catlovespurple

+0

deklarieren Sie als '$ scope.resourceGroupItems = new Array();' und verwenden Sie als '$ scope.resouceGroupItems.push (item);'. verpasste ein 'r' @catlovespurple – arifin4web

+0

Diese Antwort ist zwar nicht korrekt, aber nicht hilfreich. Bitte fügen Sie eine Erklärung hinzu. –

Verwandte Themen