我在angular 2应用程序中有两个组件:组件A(父组件)和组件B(子组件)。
当我使用@Input()将数据(myData)从A传递到B时,我在我的B(子组件)中获取我的数据,但问题是子组件在myData之前加载并且我得到了undefined,唯一的方法一个罐子console.log(myData)在ngOnDestroy钩子里!
如何处理这种加载顺序?
答案 0 :(得分:6)
这是一个对我来说最简单的解决方案。在父组件中使用* ngIf可以延迟子组件的初始化。只有在' myData'之后,您才会绑定子组件。有价值。
让我知道代码示例是否有用,我可以将某些东西放在一起。希望这可以帮助。干杯!
答案 1 :(得分:0)
您可以像
一样在父母中使用*ngIf
< child-component *ngIf="myData" > </child-component>
答案 2 :(得分:-1)
经过两天的地狱之后,我遇到了这个解决方案,它就像一个魅力。 ngOnChanges(value:any):void {
//your code
}
reference link
答案 3 :(得分:-2)