2017-06-10 1 views
0

Ich bin ziemlich neu mit AngularJS und habe ein Problem mit der Anzeige von Daten aus einem API-Anruf.AngularJS - Anzeigen von Daten von API

Ich möchte Titel anzeigen, aber ich steckte irgendwann fest. Könnte mir jemand helfen, es zu durchlaufen?

Hier ist meine index.html

controller.js

var app = angular.module('myApp', []); 
app.controller('appController', function($scope) { 
    //console.log("test"); 
     var url = "https://api.nytimes.com/svc/topstories/v2/home.json"; 
     url += '?' + $.param({ 
      'api-key': "853fc084776f46e29732e71b3f1269ae" 
     }); 
     $.ajax({ 
      url: url, 
      method: 'GET', 
     }).done(function(result) { 
      console.log(result); 
      $scope.results = result; 
     }).fail(function(err) { 
      throw err; 
     }); 
}); 

Hier ist meine json

+0

Bitte posten Sie Ihre JSON-Daten, so dass ich die Daten wie in einer Schleife – Kannan

+0

json wissen: Geben Sie hier Bildbeschreibung - > es ist hier, wenn Sie auf den Link oben klicken – kasia

+0

Upvote die Antwort bro: P bin ich brauche Ruf :) – Kannan

Antwort

0

Es gibt zwei Probleme wurden zunächst einen Blick auf jquery innerhalb Winkel verwendet, wenn Winkel haben eigener HTTP-Dienst Sie Jquery Ajax verwendet haben, so wird nicht der Ergebnisvariable für Sie auf dem HTML-Code in der Konsole verfügbar sein es gedruckt wird aber Sie können nicht in HTML zugreifen, also müssen wir wie folgt schreiben.

$scope.$apply(function(){ 
     $scope.results = result.results; 
}); 

Jetzt Look Schleife unter der unten genannten Code

<div ng-app="myApp" ng-controller="appController"> 
    <ul> 
    <li ng-repeat="x in results"> 
    {{x.title}} 
    <li> 
    </ul> 
</div> 

Arbeits codepen link

0

Die JSON Sie ein Array von Objekten zur Verfügung gestellt, die ein Array von Objekten wiederum mit ein Titel.
Sie benötigen also ein verschachteltes Array wie unten, um alle Titel in Ihrer JSON-Antwort anzuzeigen.

<div ng-repeat="result in results"> 
    <div ng-repeat="child in result.results"> 
    {{child.title}} 
    </div> 
</div> 
Verwandte Themen