我需要创建一个订阅,Observable它在第一次被调用时立即被处理掉。
Observable
有没有类似的东西:
observable.subscribeOnce(func);
我的用例是在快速路由处理程序中创建订阅,并且每个请求都会多次调用订阅。
不是 100% 确定您需要什么,但如果您只想观察第一个值,请使用first()or take(1):
first()
take(1)
observable.first().subscribe(func);
注意:当满足条件时.take(1),两者都会自动取消订阅.first()
.take(1)
.first()
来自Coderer的评论。
import { first } from 'rxjs/operators' observable .pipe(first()) .subscribe(func);
这就是为什么