Bonjour,

J'ai deux composantes labels.component et apercu.component et j'ai un button type text dans le composant label.component que je veux partager ce qui a été écris sur ce champ avec l'autre composant apercu.component (les deux composants sont affichés au meme temps sur l'ecran) , je sais pas comment faire

5 réponses


Defy
Réponse acceptée

@output du coté du composant qui recoit l'information. C'est un décorateur d'angular qui permet de catcher l'event du composant et le passer au parent.

en gros tu a un truc du genre dans le composant de choix de la police :

class

@Output font  = new EventEmitter();

public getFont(evt) {
    this.font.emit(evt)
}

html (dans l'input de choix des font

<input (blur)="getFont($event)" />

dans le composant parent (on par du principe que le composant s'appelle FontComponent)

<Font  (font)="maMethodeDeRecuperation(evt)" />

dans la class parent

maMethodeDeRecuperation(evt) {
    console.log(evt.target.value);
}

je pense que dans l'ensemble ca devrait etre comme ca, j'ai fait ca vite fait, mais au moins tu a deja la démarche de fonctionnement.

c'est pas tres claire, tu veut partager quoi exactement?

j'ai un composant ou je demande à l'utilisateur de renseigner une police (font-family), et après je dois récuperer ce qu'il a entré pour afficher un text sur un deuxieme composant avec la police que l'utilisateur avait choisi, et tout ça automatiquement sans qu'il doit appuier sur un button

merci beaucoup de ta réponse

si tu as d'autres question n'hesite pas, si la reponse est validé n'oublie pas de fermé le sujet en selectionnant la reponse qui t'as aidé ;-)