2016-10-21 4 views
0

Ich bekomme eine Liste von Zahlen aus der API und ich benutze ng-repeat zur Anzeige auf der Webseite. Für 10 Elemente werden 10 Elemente erstellt, der Inhalt ist jedoch leer. Ich habe viele verschiedene Kombinationen ausprobiert, aber Inhalte werden nicht angezeigt. HTML-Element sieht so aus enter image description herekein Inhalt in ngrepeat, obwohl html Elemente vorhanden sind

Wie zeigen, im Verwenden von Schaltfläche für ngrepeat, aber der Text fehlt.

Code:

$scope.getParts = function(){ 
$http({ 
    method:"GET", 
    url:'v1/getpartsname' 
}).then(function(res){ 
    $scope.parts = []; 
    for (var i = 1; i < res.data.length; i++) { 
     $scope.parts.push(parseInt(res.data[i][0].trim())); 
    } 
    // $scope.partNumbers = parts; 
    $scope.searchPart = ""; 
}); 
} 

Und die html ist

<div className="container" ng-show="showPartNumbers" ng-init="getParts()"> 
     <div className="row"> 
      <div className="col-sm-6" ng-repeat="part in parts| filter:searchPart"> 
       <button type="button" ng-click="home(part)">{{part}}</button>     
      </div> 
     </div> 
</div> 

ich die html wie folgt angezeigt zu bekommen:

enter image description here

Die formatiert json, die ich mit Umfang binden :

enter image description here

Die ursprüngliche json, die ich von http Anruf erhalten ist:

enter image description here

+0

Haben Sie verifiziert 'parseInt (res.data [i] [0] .trim())' hat einen Wert? – Ronnie

+0

ja es enthält alle Ganzzahlen @Ronnie –

+0

ist 'showPartNumbers' gesetzt? Du hast es in 'ng-show'..ich wette, das ist es. Ihr Code sieht gut aus sonst – Ronnie

Antwort

1

@SangitDhanani natürlich die Plunker funktioniert, weil Sie habe das gebrochene Stück entfernt. Eine Möglichkeit, dies zu tun, ist das Speichern des JSons, den Sie von Ihrem API-Aufruf erhalten haben, in eine JSON-Datei, und dann können Sie dies in Ihren Plumbing setzen.

Es wird den Plünderer näher an Ihr Problem bringen und uns hoffentlich helfen, die Quelle zu finden.

Eine Sache, die ich ein paar Mal gesehen habe, ist, wo eine REST API JSON, aber nicht als JSON, aber stringified, eine JSON.parse zum Entpacken benötigt. So etwas wie

Auf den ersten Blick sieht es aus wie JSON, aber in Wirklichkeit ist es eine Zeichenfolge.

+0

Ich habe das selbe Array wie Plunker benutzt und bin immernoch nicht in der Lage, Inhalte in eckigen darzustellen. Ich denke es sollte ein Problem mit meinem localhost geben. Ich benutze Django und Rendern der HTML als :: return render (Anfrage, "index.html") –

+0

ich konnte das Problem lösen. Ich habe Ihren Vorschlag für Json verwendet und wörtlich verwendet, was das Rendern der Django-Template-Engine verhindert. –

+0

Woo hoo! tolles Ergebnis! – Mikkel

0

ParseInt andernfalls könnte (einer der Werte ist leer/ungültig?), Versuchen Sie mit einfach nur Werte, dh keine parseInt oder trimmen:

$scope.parts.push(res.data[i]); 

Sie auch die Daten in einen Umfang variable

setzen können versuchen,
$scope.rawData = res.data; 

und dann zeigen, dass in der Benutzeroberfläche mit

{{rawData | json}}

Obwohl Sie die Daten im Inspektor sicher

der Struktur aussehen kann
+0

ive versuchte alle Kombinationen.Siehe aktualisierte Frage @Mikkel –

+0

Die Schaltflächen sagen uns, dass Sie eine Reihe von Daten erhalten, aber die leeren Tasten sagen uns, dass Sie die Zahlen nicht richtig herausziehen. Können Sie den JSON zu Ihrer Frage hinzufügen, damit ich es sehen kann? – Mikkel

+0

ive aktualisierte die Frage mit JSON –

Verwandte Themen