首页 > 解决方案 > 在组件首次初始化但订阅发生后更新值

问题描述

我有一个警报列表和一个函数refresh(),每次我想刷新我的列表时都会调用它。此外,我有一个布尔值isFirstLoading,我想通过向函数发送值来更新它refresh()仅在第一次刷新isFirstLoading时负责打开视图中的加载程序。代码如下所示:

subscription = this.query.selectSomething().subscribe({
   refresh(isFirstLoading=false)
})

ngOnInit(){
   refresh(isFirstLoding=true)
}

refresh(){
   //some code here
}

问题是这段代码的流程是:ngOnInit -> isFirstLoading=true -> subscription -> isFirstLoading=false

因为订阅是在 ngOnInit 之后立即发生的——加载器第一次没有更新。有没有人有解决方案的想法?

标签: angular

解决方案


推荐阅读