Je veux parcourir l'objet imbriqué.
<div *ngFor="let movie of movies" class="container">
<table class="table">
<tbody>
<tr >
<th><img src="#"></th>
<td >{{movie.movieRating.rating9}}</td>
</tr>
</tbody>
</table>
</div>
Ceci est mon fichier HTML
"movieRating": {
"rate": [{
"rating9": 9,
"count9": 158
}, {
"rating8": 8,
"count8": 101
}, {
"rating7": 7,
"count7": 32
}, {
"rating6": 6,
"count6": 48
}, {
"rating5": 5,
"count5": 125
}],
"totalCount": 456}
Si j'essaye {{movie.movieRating.rating9}} cela ne fonctionne pas.
Mais {{movie.movieRating.totalCount}} fonctionne.
Existe-t-il un moyen d'obtenir rating9 et count9.
3 Réponses :
Rating9 est en position 0 du tableau de taux, donc pour y accéder, vous pouvez utiliser {{movie.movieRating.rate [0] .rating9}} . {{movie.movieRating.rate [0] .rating9}} . < pré> XXX
movieRating a une propriété appelée rate , qui est une liste de évaluations . Donc, ce serait comme movie.movieRating.rate [0] .rating9 .
Mais la partie HTML que vous avez postée dans cette question ne donnera qu'une seule ligne, c'est rating9 La ligne de , alors ce n'est pas la peine de boucler. Alors généralisez votre objet rate comme ci-dessous:
<div *ngFor="let rating of movies.movieRating.rate" class="container">
<table class="table">
<tbody>
<tr >
<th><img src="#"></th>
<td >{{rating}}</td>
</tr>
</tbody>
</table>
</div>
Il serait donc très facile de faire une boucle également dans le futur .. comme ci-dessous: p >
"rate": {
"rating": 9,
"count": 158
}
Lors de l'accès aux éléments du tableau d'objets imbriqués, vous devez d'abord parcourir le tableau principal dans votre cas, ses "films". Ensuite, vous devez parcourir le tableau imbriqué appelé "rate" à l'intérieur de l'objet film, puis vous pouvez accéder aux valeurs de taux comme suit.
Votre tableau imbriqué.
<div *ngFor="let movie of movies" class="container">
<table class="table">
<tbody>
<tr *ngFor="let rate of movie.movieRating.rate" >
<th><img src="#"></th>
<td >{{movie.movieRating.rating9}}</td>
</tr>
</tbody>
</table>
</div>
Modifié code html
movies:[{
"movieRating": {
"rate": [{
"rating9": 9,
"count9": 158
}, {
"rating8": 8,
"count8": 101
}, {
"rating7": 7,
"count7": 32
}, {
"rating6": 6,
"count6": 48
}, {
"rating5": 5,
"count5": 125
}],
"totalCount": 456}
}]
Voulez-vous seulement 9 ou d'autres aussi?
Actuellement, je ne le teste que pour Count9 et Note9.