【发布时间】:2020-01-30 10:55:04
【问题描述】:
我有两种方法可以返回 observables。如果先返回一些数据,则无需调用第二个方法。但是如果第一个方法返回 null 那么只调用第二个方法。
getdefaultAddress(id) : Observable<Address[]> {
return this.http.get<Address[]>(this.url + 'users/' + id + '/addresses' + '?filter[where][default]=true')
}
getFirstAddress(id): Observable<any>{
return this.http.get<any>(this.url + 'users/' + id +'/addresses?filter[limit]=1' )
}
在使用 if-else 订阅第一个 observable 后,我可以轻松地做到这一点。 喜欢
this.getdefaultAddress(id).subscibe(data =>{
if(data) {
// do something
}
else {
this.getFirstAddress(id).subscibe(data =>{
// do something
})
}
})
现在我如何在不真正订阅第一个 observable 的情况下检查这个?有 rxjs 运算符吗?
提前谢谢你
【问题讨论】: