passer des données depuis fils vers parent Angular

Par Zakaria Lrh, il y a 7 ans


Bonjour,

En fait, je voulais savoir comment passer des données avec <router-outlet>

actuellement j'ai un truc qui marche : (dans accueil.component.html) <- parent

<app-labels (titresPrincipauxPoliceChange)="receivetitresPrincipauxPoliceChange($event)"

(titresSecondairesPoliceChange)="receivetitresSecondairesPoliceChange($event)">

</app-labels>

Ce que je fais

<app-labels (titresPrincipauxPoliceChange)="receivetitresPrincipauxPoliceChange($event)"

(titresSecondairesPoliceChange)="receivetitresSecondairesPoliceChange($event)">

</app-labels>

Ce que je veux

mais ce que je veux c'est de faire la même chose mais de cette façon (router-outlet au lieu de app-labels) : (ce qui ne marche pas pour l'instant)

<router-outlet (titresPrincipauxPoliceChange)="receivetitresPrincipauxPoliceChange($event)"

(titresSecondairesPoliceChange)="receivetitresSecondairesPoliceChange($event)">

</router-outlet>

9 réponses

Defy, il y a 7 ans

pourquoi passer par le router? Une besoin spécial?

Zakaria Lrh, il y a 7 ans

oui parce que c'est quand je clique sur un menu ou j'affiche la page de ce menu et qui doit avoir les données que je voudrai passer (titrePrin...) sinon je pense laisser le truc avec <app-labels> sans passer par router-outlet mais je dois faire un hidden dans app-labels et je ne permet son affichage qu'au click sur un button mais comment faire cela concretement ?

Zakaria Lrh, il y a 7 ans

c'est bon c'est fait :)

Defy, il y a 7 ans

peut etre poster ta solution pour les gens qui ne savent pas comment faire

Zakaria Lrh, il y a 7 ans

oui j'ai fait ça <app-labels [style.visibility]="isLabelsVisible ? 'visible' : 'hidden'" ></app-labels>
et j'ai ajouté un attribut isLabelsVisible dans le fichier ts
Mais le problème c'est que meme si il n'est pas affiché il occupe de l'espace
comment corriger cela ?

Zakaria Lrh, il y a 7 ans

oui j'ai fait ça [style.visibility]="isLabelsVisible ? 'visible' : 'hidden'"
et j'ai ajouté un attribut isLabelsVisible dans le fichier ts
Mais le problème c'est que meme si il n'est pas affiché il occupe de l'espace
comment corriger cela ?

Defy, il y a 7 ans

remplacer le style.visibility par un *ngIf

Zakaria Lrh, il y a 7 ans

ça marche like magic! merciii

Defy, il y a 7 ans

de rien ;-)