debug
Created by Daniele Morosinotto
Import
import { debug } from 'ngxtension/debug';
Usage
You simply add it to your pipeline passing a tag
string and it’ll output to console all events.
import { from, map } from 'rxjs';import { debug } from 'ngxtension/debug';
const in$ = from([1, 2, 3]);const out$ = in$.pipe( debug('before'), map((n) => { if (n > 2 && Math.random() < 0.9) return n * 2; else throw new Error('You WIN a Maybe error!'); }), debug('after'),);
out$.subscribe();// LOGS://<timestampUTC> [before: Next] 1//<timestampUTC> [after: Next] 2//<timestampUTC> [before: Next] 2//<timestampUTC> [after: Next] 4//<timestampUTC> [before: Next] 3// IF YOU ARE VERY LUCKY (<10%)//<timestampUTC> [after: Error] You WIN a Maybe error!// OR IF YOU ARE UNLUCKY (>90%)//<timestampUTC> [after: Next] 6//<timestampUTC> [before: Complete]//<timestampUTC> [after: Complete]
In addition to tag
you can also provide extra notifications like subscribe
, unsubscribe
and finalize
by passing an optional object of type
type ExtraNotifications = { subscribe?: boolean; unsubscribe?: boolean; finalize?: boolean;};
const in$ = of('hello world');const out$ = in$.pipe(debug('test', { subscribe: true }));
out$.subscribe();// LOGS://<timestampUTC> [test: Subscribed]//<timestampUTC> [test: Next] hello world//<timestampUTC> [test: Completed]