Alors je l’ai fait. Je pense que ces extraits pourraient être utiles à quelqu’un d’autre, alors voici ce qui me manquait dans le composant :
Ceci est loin d’être une documentation d’utilité générale, mais peut-être que cela aidera quelqu’un s’il en a besoin (ou peut-être que je le retrouverai la prochaine fois que j’en aurai besoin !).
import { tracked } from '@glimmer/tracking';
...
@tracked myRating
constructor() {
super(...arguments);
this.userRatings = this.args.topic.user_ratings; // Initialiser la propriété suivie
if (!this.args.topic.user_ratings) {
return [];
}
const ratingId = this.args.id;
const rating = this.args.topic.user_ratings.find((rating) => Number(rating.rating_id) === Number(ratingId));
this.myRating = rating?.rating_value;
}
....
// et ensuite dans l'action qui change la valeur :
this.myRating = Number(newStatus);