Sto cercando di eseguire il ciclo dell'oggetto JSON nidificato restituito dalla ricerca nell'API REST di Spotify, ma non riesco a visualizzare i risultati.
All'interno del mio controller:
function fetch() {
$http.get("https://api.spotify.com/v1/search?q=" + $scope.search + "&type=artist&limit=50")
.then(function(response) {
console.log(response.data.artists.items);
$scope.details = response.data.artists.items;
});
}
che restituisce un oggetto simile al seguente:
Sto cercando di ripetere la risposta in questo modo:
<div ng-if="details.response==="True"">
<ul ng-repeat="song in details">
<li>Songs:{{song.name}}</li>
</ul>
</div>
e visualizzare il external_urls
valore, images
URL, così come il name
valore. Tuttavia, nessuno di questi viene reso (nemmeno la parola Songs
che dovrebbe mostrare indipendentemente dal fatto che io abbia o meno i valori corretti).
risposte:
1 per risposta № 1Cambiare il ng-if
clausola
Fallo valutare come reale boolean
questo diventa vero quando la risposta contiene dati.
Qualcosa di simile a:
.then(function(response) {
console.log(response.data.artists.items);
$scope.isTheDataLoaded = true;
$scope.details = response.data.artists.items;
E nel tuo html:
<div ng-show="isTheDataLoaded">
0 per risposta № 2
Cambia la tua condizione if in
<div ng-if="details">
<ul ng-repeat="song in details">
<li>Songs:{{song.name}}</li>
</ul>
</div>
Perché "dettagli" non contiene "risposta". Quindi devi solo verificare se esiste o se non è vuoto