This symbol shall be used to install a listener for only monitoring 'error'
events. Listeners installed using this symbol are called before the regular
'error' listeners are called.
@@ -115,13 +115,13 @@ regular 'error' listener is installed.
+
Defined in node_modules/.pnpm/@types+node@18.15.11/node_modules/@types/node/events.d.ts:327
Synchronously calls each of the listeners registered for the event namedeventName, in the order they were registered, passing the supplied arguments
to each.
Returns true if the event had listeners, false otherwise.
// First listener myEmitter.on('event', functionfirstListener() { console.log('Helloooo! first listener'); }); // Second listener myEmitter.on('event', functionsecondListener(arg1, arg2) { console.log(`event with parameters ${arg1}, ${arg2} in second listener`); }); // Third listener myEmitter.on('event', functionthirdListener(...args) { constparameters = args.join(', '); console.log(`event with parameters ${parameters} in third listener`); });
console.log(myEmitter.listeners('event'));
myEmitter.emit('event', 1, 2, 3, 4, 5);
// Prints: // [ // [Function: firstListener], // [Function: secondListener], // [Function: thirdListener] // ] // Helloooo! first listener // event with parameters 1, 2 in second listener // event with parameters 1, 2, 3, 4, 5 in third listener
+
// First listener myEmitter.on('event', functionfirstListener() { console.log('Helloooo! first listener'); }); // Second listener myEmitter.on('event', functionsecondListener(arg1, arg2) { console.log(`event with parameters ${arg1}, ${arg2} in second listener`); }); // Third listener myEmitter.on('event', functionthirdListener(...args) { constparameters = args.join(', '); console.log(`event with parameters ${parameters} in third listener`); });
console.log(myEmitter.listeners('event'));
myEmitter.emit('event', 1, 2, 3, 4, 5);
// Prints: // [ // [Function: firstListener], // [Function: secondListener], // [Function: thirdListener] // ] // Helloooo! first listener // event with parameters 1, 2 in second listener // event with parameters 1, 2, 3, 4, 5 in third listener
Since
v0.1.26
@@ -166,21 +166,21 @@ to each.
Parameters
-
eventName: string | symbol
+
eventName: string | symbol
-
Rest...args: any[]
+
Rest...args: any[]
Returns boolean
-
+
Defined in node_modules/.pnpm/@types+node@18.15.11/node_modules/@types/node/events.d.ts:610
+
eventNames
-
-
eventNames(): (string | symbol)[]
+
+
eventNames(): (string | symbol)[]
Returns an array listing the events for which the emitter has registered
listeners. The values in the array are strings or Symbols.
Adds the listener function to the end of the listeners array for the
event named eventName. No checks are made to see if the listener has
already been added. Multiple calls passing the same combination of eventNameand listener will result in the listener being added, and called, multiple
times.
Returns a reference to the EventEmitter, so that calls can be chained.
By default, event listeners are invoked in the order they are added. Theemitter.prependListener() method can be used as an alternative to add the
event listener to the beginning of the listeners array.
-
constmyEE = newEventEmitter(); myEE.on('foo', () =>console.log('a')); myEE.prependListener('foo', () =>console.log('b')); myEE.emit('foo'); // Prints: // b // a
+
constmyEE = newEventEmitter(); myEE.on('foo', () =>console.log('a')); myEE.prependListener('foo', () =>console.log('b')); myEE.emit('foo'); // Prints: // b // a
Since
v0.1.101
@@ -297,41 +297,41 @@ event listener to the beginning of the listeners array.
Adds a one-timelistener function for the event named eventName. The
next time eventName is triggered, this listener is removed and then invoked.
-
server.once('connection', (stream) => { console.log('Ah, we have our first user!'); });
+
server.once('connection', (stream) => { console.log('Ah, we have our first user!'); });
Returns a reference to the EventEmitter, so that calls can be chained.
By default, event listeners are invoked in the order they are added. Theemitter.prependOnceListener() method can be used as an alternative to add the
event listener to the beginning of the listeners array.
-
constmyEE = newEventEmitter(); myEE.once('foo', () =>console.log('a')); myEE.prependOnceListener('foo', () =>console.log('b')); myEE.emit('foo'); // Prints: // b // a
+
constmyEE = newEventEmitter(); myEE.once('foo', () =>console.log('a')); myEE.prependOnceListener('foo', () =>console.log('b')); myEE.emit('foo'); // Prints: // b // a
Since
v0.3.0
@@ -340,38 +340,38 @@ event listener to the beginning of the listeners array.
Adds the listener function to the beginning of the listeners array for the
event named eventName. No checks are made to see if the listener has
already been added. Multiple calls passing the same combination of eventNameand listener will result in the listener being added, and called, multiple
times.
Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this
listener is removed, and then invoked.
-
server.prependOnceListener('connection', (stream) => { console.log('Ah, we have our first user!'); });
+
server.prependOnceListener('connection', (stream) => { console.log('Ah, we have our first user!'); });
Returns a reference to the EventEmitter, so that calls can be chained.
@@ -420,36 +420,36 @@ listener is removed, and then invoked.
// Returns a new Array with a function `onceWrapper` which has a property // `listener` which contains the original listener bound above constlisteners = emitter.rawListeners('log'); constlogFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event logFnWrapper.listener();
// Logs "log once" to the console and removes the listener logFnWrapper();
emitter.on('log', () =>console.log('log persistently')); // Will return a new Array with a single function bound by `.on()` above constnewListeners = emitter.rawListeners('log');
// Returns a new Array with a function `onceWrapper` which has a property // `listener` which contains the original listener bound above constlisteners = emitter.rawListeners('log'); constlogFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event logFnWrapper.listener();
// Logs "log once" to the console and removes the listener logFnWrapper();
emitter.on('log', () =>console.log('log persistently')); // Will return a new Array with a single function bound by `.on()` above constnewListeners = emitter.rawListeners('log');
removeListener() will remove, at most, one instance of a listener from the
listener array. If any single listener has been added multiple times to the
@@ -500,7 +500,7 @@ called multiple times to remove each instance.
Once an event is emitted, all listeners attached to it at the
time of emitting are called in order. This implies that anyremoveListener() or removeAllListeners() calls after emitting and before the last listener finishes execution
will not remove them fromemit() in progress. Subsequent events behave as expected.
// callbackA removes listener callbackB but it will still be called. // Internal listener array at time of emit [callbackA, callbackB] myEmitter.emit('event'); // Prints: // A // B
// callbackB is now removed. // Internal listener array [callbackA] myEmitter.emit('event'); // Prints: // A
+
// callbackA removes listener callbackB but it will still be called. // Internal listener array at time of emit [callbackA, callbackB] myEmitter.emit('event'); // Prints: // A // B
// callbackB is now removed. // Internal listener array [callbackA] myEmitter.emit('event'); // Prints: // A
Because listeners are managed using an internal array, calling this will
change the position indices of any listener registered after the listener
@@ -510,7 +510,7 @@ the emitter.listeners() method will need to be recreated.
When a single function has been added as a handler multiple times for a single
event (as in the example below), removeListener() will remove the most
recently added instance. In the example the once('ping')listener is removed:
By default EventEmitters will print a warning if more than 10 listeners are
added for a particular event. This is a useful default that helps finding
@@ -555,22 +555,22 @@ modified for this specific EventEmitter instance. The value can be
// Emit later on process.nextTick(() => { ee.emit('foo', 'bar'); ee.emit('foo', 42); });
forawait (consteventofon(ee, 'foo')) { // The execution of this inner block is synchronous and it // processes one event at a time (even with await). Do not use // if concurrent execution is required. console.log(event); // prints ['bar'] [42] } // Unreachable here })();
+
const { on, EventEmitter } = require('events');
(async () => { constee = newEventEmitter();
// Emit later on process.nextTick(() => { ee.emit('foo', 'bar'); ee.emit('foo', 42); });
forawait (consteventofon(ee, 'foo')) { // The execution of this inner block is synchronous and it // processes one event at a time (even with await). Do not use // if concurrent execution is required. console.log(event); // prints ['bar'] [42] } // Unreachable here })();
Returns an AsyncIterator that iterates eventName events. It will throw
if the EventEmitter emits 'error'. It removes all listeners when
exiting the loop. The value returned by each iteration is an array
composed of the emitted event arguments.
An AbortSignal can be used to cancel waiting on events:
-
const { on, EventEmitter } = require('events'); constac = newAbortController();
(async () => { constee = newEventEmitter();
// Emit later on process.nextTick(() => { ee.emit('foo', 'bar'); ee.emit('foo', 42); });
forawait (consteventofon(ee, 'foo', { signal:ac.signal })) { // The execution of this inner block is synchronous and it // processes one event at a time (even with await). Do not use // if concurrent execution is required. console.log(event); // prints ['bar'] [42] } // Unreachable here })();
process.nextTick(() =>ac.abort());
+
const { on, EventEmitter } = require('events'); constac = newAbortController();
(async () => { constee = newEventEmitter();
// Emit later on process.nextTick(() => { ee.emit('foo', 'bar'); ee.emit('foo', 42); });
forawait (consteventofon(ee, 'foo', { signal:ac.signal })) { // The execution of this inner block is synchronous and it // processes one event at a time (even with await). Do not use // if concurrent execution is required. console.log(event); // prints ['bar'] [42] } // Unreachable here })();
process.nextTick(() =>ac.abort());
Since
v13.6.0, v12.16.0
@@ -637,21 +637,21 @@ composed of the emitted event arguments.
Parameters
-
emitter: EventEmitter
+
emitter: EventEmitter
-
eventName: string
+
eventName: string
The name of the event being listened for
-
Optional options: StaticEventEmitterOptions
-
Returns AsyncIterableIterator<any>
+
Returns AsyncIterableIterator<any>
-
+
Defined in node_modules/.pnpm/@types+node@18.15.11/node_modules/@types/node/events.d.ts:254
Creates a Promise that is fulfilled when the EventEmitter emits the given
event or that is rejected if the EventEmitter emits 'error' while waiting.
@@ -659,15 +659,15 @@ The Promise will resolve with an array of all the arguments emitted
given event.
This method is intentionally generic and works with the web platform EventTarget interface, which has no special'error' event
semantics and does not listen to the 'error' event.
The special handling of the 'error' event is only used when events.once()is used to wait for another event. If events.once() is used to wait for the
'error' event itself, then it is treated as any other kind of event without
special handling:
Sets or gets the default captureRejection value for all emitters.