gpt4 book ai didi

angular - 如何在 Angular 的可观察 map 中返回可观察对象

转载 作者:行者123 更新时间:2023-12-03 18:44:54 24 4
gpt4 key购买 nike

我真的找不到合适的词来形容我想做的事情。所以我只是展示我的尝试..这就是我尝试过的:

register(): Observable<boolean> {

return this.registerNew().pipe(
map(userData => {
return this.updateProfile().pipe( (*1)
map(profileData => {
return profileData ? true : false;
}))
}))
}

但当然我收到以下错误消息:
Type 'Observable<false | Observable<boolean>>' is not assignable to type 'Observable<boolean>'.
我也在考虑在我用 (*1) 标记的行中使用 await 而不是 return。

但我仍然无法让它以一种很好的方式工作。

最佳答案

如果你想从一个 observable 切换到另一个并使用前一个的值,有一个 switchMap 操作符可以这样使用

register(): Observable<boolean> {

return this.registerNew().pipe(
switchMap(userData => {
return this.updateProfile().pipe( (*1)
map(profileData => {
return profileData ? true : false;
}))
}))
}

是什么导致发生 registerNew ,然后它将结果值传递给返回 observable 的 switchMap (switchMap 必须返回一个 observable 才能工作),然后内部 observable ( updateProfile ) 的结果到达订阅者。

关于angular - 如何在 Angular 的可观察 map 中返回可观察对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56547458/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com