首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RxJS可观察性--如何调节可观察性回报

RxJS可观察性--如何调节可观察性回报
EN

Stack Overflow用户
提问于 2020-11-17 16:15:55
回答 2查看 421关注 0票数 1

我对可观察对象和RxJ是新手,我想要调节返回。如果第一个选择器返回一个特定值,我想从第二个选择器返回一个观察值。但是如果第一个选择器没有返回那个特定值,我想返回false (而不是(False))。我已经走到这一步了,但这将返回一个可观察对象。它不应该是嵌套的。我该怎么做呢?下面是目前为止的代码:

代码语言:javascript
复制
       const condition$: Observable<boolean> =
        this.store.pipe(
            select(this.firstSelector.get()),
            map(item=> {
                if (item !== X) {
                    return of(false)
                } else {
                    return this.store.pipe(select(this.secondSelector.hasValue()))
                }
            })
        )
EN

Stack Overflow用户

回答已采纳

发布于 2020-11-17 16:21:09

你就快到了。您应该使用像switchMap这样的高阶映射操作符来返回一个可观察值。map用于转换和返回来自可观察对象的数据。

代码语言:javascript
复制
const condition$: Observable<boolean> = this.store.pipe(
  select(this.firstSelector.get()),
  switchMap(item =>
    (item !== X)
      ? of(false)
      : this.store.pipe(select(this.secondSelector.hasValue()));
  )
)
票数 3
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64871528

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档