如何将 Promise<Observable<T>> 转换为 Observable<T>?
How to convert Promise<Observable<T>> to Observable<T>?
我有这个功能:
someFunction(): Promise<Observable<boolean>> {
return Promise1()
.then(text => Promise2(text))
.then(resultString => Observable(resultString))
}
其中 Promise1
和 Promise2
是 return 承诺的函数,Observable
是 return 可观察的函数。
因此,为了获得可观察的值,我必须进行下一次调用:
someFunction().then(res => res.subscribe(value => //get Value));
有没有办法更改 someFunction
以直接从 observable 获取值?
someFunction().subscribe(res => //getValue);
试试这样的东西?
from
将 promise 转换为 observable
switchMap
也进行这种转换,因此您可以 return 来自该 lambda 的承诺
someFunction(): Observable<boolean> {
return from(promise1()).pipe(
switchMap(text => promise2(text)),
switchMap(resultString => observable1(resultString))
);
}
我有这个功能:
someFunction(): Promise<Observable<boolean>> {
return Promise1()
.then(text => Promise2(text))
.then(resultString => Observable(resultString))
}
其中 Promise1
和 Promise2
是 return 承诺的函数,Observable
是 return 可观察的函数。
因此,为了获得可观察的值,我必须进行下一次调用:
someFunction().then(res => res.subscribe(value => //get Value));
有没有办法更改 someFunction
以直接从 observable 获取值?
someFunction().subscribe(res => //getValue);
试试这样的东西?
from
将 promise 转换为 observableswitchMap
也进行这种转换,因此您可以 return 来自该 lambda 的承诺
someFunction(): Observable<boolean> {
return from(promise1()).pipe(
switchMap(text => promise2(text)),
switchMap(resultString => observable1(resultString))
);
}