RxJS elementAt
index
从源 Observable 发出按发射顺序指定的单个值。
elementAt<T>(index: number, defaultValue?: T): MonoTypeOperatorFunction
<T>
参量
defaultValue | 是i 从订阅以来发生的第i个源发射的数字0 。 |
---|---|
默认值 | 可选的。默认值为undefined 。对于缺少索引返回的默认值。 |
returns
MonoTypeOperatorFunction<T>
:发出单个项目(如果找到)的 Observable。否则,将给出默认值。如果不是,则发出错误。
投掷
ArgumentOutOfRangeError
使用时elementAt(i)
,error
如果i < 0
或在发出第i个next
通知之前 Observable 已完成,它将 ArgumentOutOrRangeError 传递给 Observer 的回调。
描述
仅发出第 i 个值,然后完成。
elementAt
返回一个Observable,该对象index
在源 Observable 中指定的位置发射该项目 ,或者返回默认值(如果index
超出范围且default
提供了参数)。如果default
未提供参数且index
超出范围,则输出Observable将发出 ArgumentOutOfRangeError
错误。
例
仅发出第三次点击事件
import { fromEvent } from 'rxjs';
import { elementAt } from 'rxjs/operators';
const clicks = fromEvent(document, 'click');
const result = clicks.pipe(elementAt(2));
result.subscribe(x => console.log(x));
// Results in:
// click 1 = nothing
// click 2 = nothing
// click 3 = MouseEvent object logged to console