J'ai la carte suivante dans un service: sloTitem est une classe. Je donne la slotlist du service avec: p> Deux choses ne sont pas claires: p> Comment puis-je m'abonner aux slotatems p>
this.sloitems = ceci.fservice.getsloitems (); p>
this.sloTems.subscribe (val => console.log (val)); p> li>
Comment puis-je itération avec ngfor sur les éléments p>
p> li>
ol> j'ai essayé p> mais je reçois l'erro que les slotatems ne sont pas assignables à Ngiterable. P> si je change p> i obtenir une erreur dans le HTML si j'écris p> Les champs "actifs" et "icône" sont membres de la classe SloTem. P>
<div *ngIf="!item?.value?.active" style="color:darkgray">
<{{item.value.title}}>
</div>
3 Réponses :
au lieu de: Utilisez: p> Cela signifie également que vous n'avez pas besoin de vous abonner à l'observable vous-même. p> p> async code> tuyau s'abonne et se désabonne à votre observable au besoin, et renvoie la dernière valeur de l'observable à chaque fois qu'un nouveau est émis. < / p>
Merci, mais comment puis-je accéder à l'élément de la classe: "item.value.id" ne fonctionne pas.
Pourriez-vous mettre à jour votre question montrant où vous essayez d'accéder à item.value.id code>?
Je l'ai fait. Je suis un peu plus confus maintenant. Les autres réponses ci-dessus ont déclaré que je devrais utiliser S'abonner.
Donc, ion-item> code>? Si oui, peut-être que votre article code> code> n'a pas de champ code> code>? Si tel est le cas, vous pouvez utiliser l'opérateur de traversée sans danger ?. Code> comme ceci: élément? .Value? .Active code>
Question étendue. Je reçois toujours TypeError.
Mis à jour, vous avez besoin keyvalue code> car votre élément code> est une entrée de carte
1.pour abonnez-vous à un processus observable comme ci-dessous data.values () renvoie toutes les valeurs de la carte comme itératetable p> * ngfor = "Laissez l'élément de SloTitems | ASYNC" P> puis utilisez l'élément.Id et l'élément.active directement p> qui informera SloTems ira de le service ou il sera chargé de manière dynamique p> p>
J'ai changé de comportement et de cache. Ça marche bien maintenant
dans le service que j'écris p> dans le composant p> et maintenant dans le HTML J'accède aux éléments avec p> et l'accès membre est direct à cause de l'async p>