【发布时间】:2021-08-03 15:14:40
【问题描述】:
我遇到了一个我无法解决的问题:
onSelectCompany() {
combineLatest([this.idCompany$, this.idUser$, this.router.events]).subscribe(res => {
if(res[2] instanceOf NavigationEnd){
this.router.navigateByUrl(`get-info/${res[0]/res[1]`)
}
})
}
我在我的组件的 ngOnInit 上调用了这个函数,我有两个 observables,我需要像我的 url 的参数,只有当我没有刷新页面时,我才需要在这个 url 上导航。但是我写的函数不起作用,我没有错误但是在调试中执行没有进入订阅。为什么?
【问题讨论】:
-
所有 3 必须在该函数执行后发出一些东西
-
而不是,如果我删除 this.router.events 它可以工作...问题是 router.events 可观察...我不明白为什么
-
是的,因为 router.events 只会在有路由事件时发出一些东西
-
所以,在这种情况下我不能使用 combineLatest
-
我用“解决方案”更新了我的答案
标签: angular typescript rxjs observable ngrx