小编典典

创建一次性订阅

all

我需要创建一个订阅,Observable它在第一次被调用时立即被处理掉。

有没有类似的东西:

observable.subscribeOnce(func);

我的用例是在快速路由处理程序中创建订阅,并且每个请求都会多次调用订阅。


阅读 62

收藏
2022-06-09

共1个答案

小编典典

不是 100% 确定您需要什么,但如果您只想观察第一个值,请使用first()or take(1)

observable.first().subscribe(func);

注意:当满足条件时.take(1),两者都会自动取消订阅.first()

从 RxJS 5.5+ 更新

来自Coderer的评论。

import { first } from 'rxjs/operators'

observable
  .pipe(first())
  .subscribe(func);

这就是为什么

2022-06-09