throwIfEmpty
function
stable
operator
If the source observable completes without emitting a value, it will emit an error. The error will be created at that time by the optional errorFactory
argument, otherwise, the error will be EmptyError
.
throwIfEmpty<T>(errorFactory: () => any = defaultErrorFactory): MonoTypeOperatorFunction<T>
Parameters
errorFactory |
() => any |
Optional. Default is A factory function called to produce the error to be thrown when the source observable completes without emitting a value. |
Returns
MonoTypeOperatorFunction<T>
: A function that returns an Observable that throws an error if the source Observable completed without emitting.
Description
Example
Throw an error if the document wasn't clicked within 1 second
import { fromEvent, takeUntil, timer, throwIfEmpty } from 'rxjs'; const click$ = fromEvent(document, 'click'); click$.pipe( takeUntil(timer(1000)), throwIfEmpty(() => new Error('The document was not clicked within 1 second')) ) .subscribe({ next() { console.log('The document was clicked'); }, error(err) { console.error(err.message); } });
© 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/index/function/throwIfEmpty