Bonjour, je chercher à transmettre une valeur depuis le parent vers l'enfant de l'enfant.
dans cette exemple la transmission d'une valeur vers l'enfant:
je souhaite envoyer le 0 dans le décorateur enfant qui est une page, voici sont component Page:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import { Component,ElementRef} from '@angular/core'; @Component({ selector: 'app-root', template: ` <app-page [articleCourant]="choixArticle" ></app-page> `', styleUrls: ['./app.component.css'] }) export class AppComponent { choixArticle:number=0; //article 0 = home isHideContact:boolean = true; public constructor(){ } }
Ici pas de problème la valeur articleCourant est afficher à 0, par contre je souhaite transmettre au components app-article, comment je dois m'y prendre,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 import { Component, OnInit, Input } from '@angular/core'; @Component({ selector: 'app-page', template:` <h1> {{articleCourant}}</h1> <app-article></app-article> `, styleUrls: ['./page.component.css'] }) export class PageComponent implements OnInit { @Input() articleCourant; constructor() { } ngOnInit() { } }
est t'on obligé de créer un attribut qui dans le composant et de faire la même chose ?
Il y aurait t'il une astuce pour gérer la transmission de cette variable ? ou il n'y a pas le choix de passer par autre chose ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import { Component, OnInit, Input } from '@angular/core'; @Component({ selector: 'app-page', template:` <h1> {{articleCourant}}</h1> <app-article [afficheArticle] = "articleCourantSousEnfant"></app-article> `, styleUrls: ['./page.component.css'] }) export class PageComponent implements OnInit { @Input() articleCourant; articleCourantSousEnfant:any; constructor() { this. articleCourantSousEnfant = articleCourant; } ngOnInit() { } }
merci d'avance de vos réponses![]()
Partager