我正在创建一个Angular 4组件,它将显示由角度4服务提供的一些数据。数据会定期更改,因此我希望组件每次显示时都会检查新数据(而不仅仅是在构建时获取数据)。
要绑定的正确事件是什么? ngoninit似乎只在创建组件时运行一次,因此将服务函数的结果分配给NgOnInit中的成员变量似乎不正确。我相信组件是在启动/加载应用程序时创建的。
有没有更好的方法来解决这个问题?
答案 0 :(得分:0)
ngOnInit
,这意味着每次将组件“添加”到DOM时它都会运行。
例如,如果您在组件上添加ngIf
,其输入正在将false
更改为true
。
因此,如果您希望每次“显示”组件时加载数据,只需确保在不可见时将其从DOM中删除。像:
<my-component *ngIf="isVisible"></my-component>
另一种方法是使用一个名为router-outlet
的组件,在特定网址上显示该组件。 (example)
您可以在文档中找到有关lifecycle hooks的更多信息。