Spec-Zone.ru › RxJS

первый

function stable operator

Выпускает только первое значение (или первое значение, которое удовлетворяет некоторому условию), выпущенное источником Observable.

first<T, D>(predicate?: (value: T, index: number, source: Observable<T>) => boolean, defaultValue?: D): OperatorFunction<T, T | D>

Параметры

predicate (value: T, index: number, source: Observable<T>) => boolean

Необязательно. По умолчанию undefined.

Необязательная функция, вызываемая с каждым элементом для проверки соответствия условию.

defaultValue D

Необязательно. По умолчанию undefined.

Значение по умолчанию, выпущенное в случае, если на источнике не было найдено ни одного подходящего значения.

Возвращаемое значение

OperatorFunction<T, T | D>: Функция, возвращающая Observable, которая выпускает первый элемент, соответствующий условию.

Исключения

EmptyError Доставляет EmptyError в обратный вызов error наблюдателя, если Observable завершится до отправки любого уведомления next. Именно так first() отличается от take(1) , который завершается вместо этого.

Описание

Выпускает только первое значение. Или выпускает только первое значение, которое проходит некоторый тест.

first marble diagram

Если вызывается без аргументов, first выпускает первое значение источника Observable, а затем завершается. Если вызывается с predicate функцией, first выпускает первое значение источника, соответствующее указанному условию. Выпускает уведомление об ошибке, если defaultValue не был предоставлен и соответствующий элемент не найден.

Примеры

Выпускает только первый клик, который происходит на DOM

import { fromEvent, first } from 'rxjs';

const clicks = fromEvent(document, 'click');
const result = clicks.pipe(first());
result.subscribe(x => console.log(x));

Выпускает первый клик, который происходит на DIV

import { fromEvent, first } from 'rxjs';

const div = document.createElement('div');
div.style.cssText = 'width: 200px; height: 200px; background: #09c;';
document.body.appendChild(div);

const clicks = fromEvent(document, 'click');
const result = clicks.pipe(first(ev => (<HTMLElement>ev.target).tagName === 'DIV'));
result.subscribe(x => console.log(x));

Перегрузки

first(predicate?: null, defaultValue?: D): OperatorFunction<T, T | D>

Параметры

predicate null

Необязательно. По умолчанию undefined.

defaultValue D

Необязательно. По умолчанию undefined.

Возвращаемое значение

OperatorFunction<T, T | D>

first(predicate: BooleanConstructor): OperatorFunction<T, TruthyTypesOf<T>>

Параметры

predicate BooleanConstructor

Возвращаемое значение

OperatorFunction<T, TruthyTypesOf<T>>

first(predicate: BooleanConstructor, defaultValue: D): OperatorFunction<T, TruthyTypesOf<T> | D>

Параметры

predicate BooleanConstructor
defaultValue D

Возвращаемое значение

OperatorFunction<T, TruthyTypesOf<T> | D>

first(predicate: (value: T, index: number, source: Observable<T>) => value is S, defaultValue?: S): OperatorFunction<T, S>

Параметры

predicate (value: T, index: number, source: Observable<T>) => value is S
defaultValue S

Необязательно. По умолчанию undefined.

Возвращаемое значение

OperatorFunction<T, S>

first(predicate: (value: T, index: number, source: Observable<T>) => value is S, defaultValue: D): OperatorFunction<T, S | D>

Параметры

predicate (value: T, index: number, source: Observable<T>) => value is S
defaultValue D

Возвращаемое значение

OperatorFunction<T, S | D>

first(predicate: (value: T, index: number, source: Observable<T>) => boolean, defaultValue?: D): OperatorFunction<T, T | D>

Параметры

predicate (value: T, index: number, source: Observable<T>) => boolean
defaultValue D

Необязательно. По умолчанию undefined.

Возвращаемое значение

OperatorFunction<T, T | D>

См. также

  • filter
  • find
  • take
  • last

© 2015–2022 Google, Inc., Netflix, Inc., Microsoft Corp. and contributors.
Code licensed under an Apache-2.0 License. Documentation licensed under CC BY 4.0.
https://rxjs.dev/api/operators/first

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API