Obtenir l'accès au composant glimmer pour accéder aux éléments du parent

{{log "rating this parent" this.parentView._parentView.topic}}

génère une erreur laide.


<RatingOne @scaleValue={{this.scaleValue}} @passedRouter={{this.router}} @topic={{this.parentView}} />

ne semble pas générer d’erreur.

J’ai vraiment besoin de above-topic-list-item, mais grâce à votre excellent exemple, j’ai pu trouver qu’il devrait avoir le sujet dans outletArgs,

https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/components/topic-list/topic-list-item.gjs#L284

Ha ! Je vais le faire !

Donc outletArgs signifie que c’est maintenant dans le this de la chose ? (C’est ce qu’il semble - je pensais que j’aurais besoin de chercher dans args d’une manière ou d’une autre…)

Donc, dans mon connecteur hbs, je peux accéder à this.topic et ensuite je peux appeler mon composant comme ceci :

<RatingOne @name="one" @topic={{this.topic}}/>

Et ensuite dans le hbs du composant RatingOne (qui sera un jour renommé simplement rating puisque j’ai trouvé comment lui passer des choses) je peux

  Ceci est le sujet {{this.topic.id}} {{this.topic.title}}
  Ceci est l'ID de la catégorie : {{this.topic.category_id}})

et obtenir les informations du sujet !

Et maintenant que je vois le sujet, je peux aller ajouter mes arguments au sérialiseur de sujet, n’est-ce pas ? (Il serait peut-être préférable de le passer juste à la catégorie… ou peut-être que je vais juste passer une valeur “doTheThing” dans le sérialiseur et obtenir les informations réelles de SiteSettings, car je pense qu’ils veulent cela au niveau du site et non de la catégorie).

À moins que je n’aie trébuché sur autre chose de déprécié, il semble que vous l’ayez fait. Merci un million. :bière: :bières: :verres_à_pied: :portefeuille:

3 « J'aime »