1
我有2个(或更多)从服务返回的观察对象,他们每个人只返回一个值(想想Observable.just()
)。他们每个人都是不同的类型(我正在写TypeScript,所以类型很重要)。如何解决多个观察对象
有没有办法知道所有Observables何时解决(使用Promise术语)成功或失败,我需要能够单独处理失败,并继续。
人为的例子:
const obs1 = someService.getThisThing(); //Observable<Type1>
const obs2 = someService.getAnotherThing(); //Observable<Type2>
const someObj = {};
obs1.subscribe(v1 => someObj.v1 = v1);
obs2.subscribe(v2 => someObj.v2 = v2);
// call someFunc(someObj), only when both above observables resolved to a value
someFunc(someObj);
我已经使用merge
尝试,但然后我松类型安全性值可能会在任何顺序,我必须检查其类型在.subscribe
,以确定哪个是哪个
我试过combine
和combineLatest
,如here所述 - 但之后它们都在同一时间解析,如果1失败 - 一切都失败