Je crée un panneau de notification POP où je montrerai toutes les livraisons de commande d'achat non classées. Je ne sais pas comment j'utiliserais * ngfor pour la boucler.
J'ai un système dans lequel un utilisateur peut aller et jouer à la livraison de la commande d'articles. Chaque commande a sa page de notation où ils évaluent la commande. Ceci est fait à l'aide d'un composant personnalisé (composant d'évaluation étoile). P>
Question est-ce que cela fonctionne bien lorsque vous l'utilisez sur une page, mais maintenant, je dois également rappeler aux utilisateurs via le panneau de notification qu'il existe des commandes non classées, ex "Veuillez les évaluer immédiatement." Ceci est fait à l'aide d'un composant de notation répété. P>
Maintenant, lorsque je bouconne toutes les commandes non classées, il apparaît comme prévu, mais lorsque j'avève une commande, toutes les autres commandes changent également de notations. Comment puis-je surmonter cela? P> PS: suivant est le composant strong> p> aussi, les évaluations Comme vous pouvez le voir Toutes les astuces insérant une carte unique, etc., mais pas de chance! p> p>
5 Réponses :
idk si vous devez vraiment utiliser votre composant, sinon, il y a un module de NG-Bootstrap pour une note de démarrage qui est vraiment simple à utiliser ICI et vous pourriez stocker vos tarifs facilement dans un tableau p>
Bienvenue sur Stackoverflow, BTW Son bon à savoir, le composant est cool mais je n'ai pas le temps de réécrire à nouveau tout le système et de le tester. Y a-t-il une solution de contournement pour mon code de merde ici?
[notes] = "Évaluations", ne devrait-il pas être [notes] = "Tâche.ratings". Comme il est dans une boucle, je suppose que vous devez attribuer la valeur de la notation à l'élément itérateur actuel. Probablement pourquoi toutes les valeurs changent lorsque vous en changez un. P>
Désolé pour le code déroutant, mais c'est un tableau envoyant au composant pour la boucle des 5 débuts. À l'intérieur du composant, je suis itération de la matrice pour rendre 5 démarrages. C'est pourquoi c'est pourquoi les notes.
Vous auriez toujours besoin d'une référence de "Tâche" dans "Undatedorders" pour mettre à jour les évaluations de cette tâche. Essayez de lier la note à la tâche.
Cela pourrait être question avec votre composant actuel d'étoiles. Peut-être que lors de l'ajout d'une notation, ils peuvent ne pas avoir de différenciation de type ID. Le code aiderait pour une analyse exacte.
Votre code doit être comme ci-dessous P>
unratedOrders - [{
orderId:1234
ratings:[{},{}]
}]
<div class="star-rating-size">
<star-rating #starRating id="{{task.orderId}}-rating-component" (ratingChange)="changeRating($event,task)" [controlIndex]="i" [ratings]="task.ratings" [(rating)]="supplierRating.ratingId"></star-rating>
</div>
changeRating(event, selectedTask) {
loop through unratedOrders and assing value to selected task
}
Maintenant, je ne vois pas comment vous mettez à jour votre valeur de notation, mais je vois vous lier à la même note code> dans chaque
Désolé pour le code déroutant, mais c'est un tableau envoyant au composant pour la boucle des 5 débuts. À l'intérieur du composant, je suis itération de la matrice pour rendre 5 démarrages. C'est pourquoi c'est pourquoi les notes.
Voir la réponse d'Abhay Naveen. J'ai la même pensée
Cela pourrait être question avec votre composant actuel d'étoiles. Peut-être que lors de l'ajout d'une notation, ils peuvent ne pas avoir de différenciation de type ID. Le code aiderait pour une analyse exacte.
Votre code doit être comme ci-dessous P>
unratedOrders - [{
orderId:1234
ratings:[{},{}]
}]
<div class="star-rating-size">
<star-rating [ratings]="task.ratings" (ratingChange)="changeRating($event,task)" id="{{task.orderId}}-rating-component" [controlIndex]="i" [(rating)]="supplierRating.ratingId"></star-rating>
</div>
changeRating(event, selectedTask) {
loop through unratedOrders and assing value to selected task
}
Vous utilisez angular pas angularjs
Mon mauvais, mais ce n'est pas le point.
Si possible, fournissez Stackblitz
J'ai peur de ne pas pouvoir le reproduire en le simplifiant. Y a-t-il autre chose que je peux vous aider?
@Kirk n'a pas besoin de code réel juste exemple de code testable
@PrashantPimpale J'ai mis à jour le code.