Salut,
J'ai un problème pour récupérer les données d'un Input() d'un compo enfant : j'ai l'impression que le template de mon enfant est rendu avant le chargement des données dans l'input
J'ai un composant parent qui transmet la donnée "productList" comme ceci :
TS parent:
Le html parent sep résente comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public productList!: IDocumentProduct[]; constructor(private orderService: OrderService) {} ngOnInit(): void { this.orderService .getAllProducts() .pipe(take(1)) .subscribe((productList) => { this.productList = productList; }); }
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <div class="container"> <div class="container__search"> <xen-order-form [productList]="productList"></xen-order-form> </div> </div>
Enfin le ts de l'enfant:
Comment puis-retrouver la data dans le NgOnInit ?
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 @Input() set productList(value: IDocumentProduct[]) { this._products = value; this.finalValue = this.products; }; public finalValue: IDocumentProduct[] = []; private _products!: IDocumentProduct[]; get products(): IDocumentProduct[] { return this._products; } ngOnInit(): void { console.log(this.finalValue); // undefined... }
Thanxxxxxx
Partager