Имам два метода, в които извършвам някаква асинхронна операция, но не искам метод 2 да се изпълнява, докато или освен ако отговорът от метод 1 не е положителен, за да покаже, че можем да продължим по-нататък.
И така, това е, което опитах:
Метод 1:
private method1(): Observable<any> {
return new Observable(() => {
executingSomething();
this.anotherSubscription.pipe(
map(x => {
console.log('Control is not reaching here');
Also, how to indicate the caller that method2 can be executed?
I can't return anything since I'm already returning the new Observable, above.
})
);
});
}
Обаждащ се:
concat(this.method1(), this.method2()).subscribe();
Проблем: anotherSubscription
дори не се изпълнява и не мога да измисля никакъв начин да предам отговор от anotherSubscription
на повикващия.
Чувствам, че не използвам наблюдаемите в правилния смисъл тук, но изглежда не мога да намеря нищо никъде.