我已经设置了智能组件,ngOnInit
使用服务调用Rest API来获取数据对象。Angular 2:智能组件将数据传递给Presentation组件
该数据通过@Input()
属性传递给演示文稿(子)组件。
在演示文稿组件中,我需要将数据重新打包到一个不同的模型中,以便它符合我用于演示的第三方组件。
我不是100%如何处理这一事实,在presentatioin组件的ngOnInit
,中@Input
属性传递仍然是undefined
。由于实际数据是一个Rest API调用,父级(智能)组件将只会在subscribe
的观察者中获得,即异步。
我该如何将它连接在一起,以便我不试图操纵undefined
对象,而是等到它实际上存在于演示文稿组件中?
我想,我总是可以通过@ViewChild
将演示组件链接到智能父组件,然后在演示组件上引入一个公共方法,如showData(data)
,但我想知道最佳做法是什么。
https://angular.io/guide/component-interaction#intercept-input-property-changes-with-a-setter,https://angular.io/guide/lifecycle-hooks#onchanges –
使用ngOnChanges代替 – DeborahK
你能提供你的代码吗?看起来你的设置与我的不同。 – hogan