2016-07-05 1 views
0

Ich aktualisiere ein SPA, aber ich habe ein Problem Ich möchte den Namen der Klassen anzeigen, aber nichts erscheint Hier ist der Code, wo ich ein Problem habe mit vielleicht bin ich etwas fehlt:javascript/angularjs: Beim Öffnen des Modales bekomme ich nicht die gewünschten Daten

$scope.open = function (classes) { 
    $log.info("classes",classes); 
    var modalInstance = $modal.open({ 
     templateUrl: 'classes.html', 
     controller: 'ModalClassesInstanceCtrl', 
     resolve: { 
     info: function() { 
      var info = {};    
      info['name']= classes.name; 
      $log.warn("classes info",info); 
      return info; 
      } 
    } 
}); 

was ich

$log.info("classes",classes); 

zeigen, dass ich habe 5 Klassen ähnliche

Klassen in der Konsole bekam [Objekt, Objekt, Zie ct, Objekt, Objekt]

, wenn ich auf ein Objekt klicken, um es zeigt alle Daten über das Objekt einschließlich der Klassennamen zum Beispiel das erste Objekt klicken, werden die folgenden Daten zeigen

1: Object $$hashKey: "object:13" id: 4 level: "4" name: "fox" year: "2015/2016" 

aber

$log.info("classes info",info); 

zeigen nur Informationen Objektklasse {name: undefined}

bitte kann u Wetter prüfe ich etwas falsch in diesem Code haben

Antwort

1

Schauen Sie sich diese Zeile genau an: . classes ist ein Array von Objekten, kein Objekt mit der Eigenschaft name - deshalb werden Sie undefiniert. Wenn Sie einen Klassennamen anzeigen möchten, müssen Sie auf ein Objekt innerhalb eines Arrays verweisen, z. classes[0].name. Wenn Sie die Namen aller Klassen anzeigen möchten, sollten Sie über sie hinweg iterieren und die Namen in einer Zeichenfolge zusammenführen.

+0

Sie sind richtig, danke – george

Verwandte Themen