zoneA.run(() => { emitter.on('test', listenerA); emitter.on('test', listenerB); expect(emitter.listeners('test')).toEqual([listenerA, listenerB]); emitter.emit('test'); expect(zoneResults).toEqual(['A', 'B']); zoneResults = []; emitter.removeAllListeners('test'); emitter.on('test', listenerA); emitter.prependListener('test', listenerB); expect(emitter.listeners('test')).toEqual([listenerB, listenerA]); emitter.emit('test'); expect(zoneResults).toEqual(['B', 'A']); });
console.log('prepend once listener'); }; emitter.setMaxListeners(100); emitter.addListener('send', listener1); emitter.on('send', listener2); emitter.on('send', listener3); emitter.once('send', listener); emitter.once(1, listener4); emitter.prependListener('send', listener5); emitter.prependOnceListener('send', listener6); emitter.listeners('send'); emitter.listenerCount('send'); emitter.rawListeners('send'); EventEmitter.defaultMaxListeners = 100; console.log(`count(static): ${EventEmitter.listenerCount(emitter, 'send')}`); console.log(`ncount: ${emitter.listenerCount('send')}`); console.log(`maxListeners: ${emitter.getMaxListeners()}`); console.log(`eventNames: ${emitter.eventNames().join(', ')}`); console.log(`rawListeners count: ${emitter.rawListeners('send').length}`); setTimeout(() => {
import * as events from 'events'; const emitter: events.EventEmitter = new events.EventEmitter(); const event: string | symbol = ''; const listener: (...args: any[]) => void = () => {}; const any: any = 1; { let result: events.EventEmitter; result = emitter.addListener(event, listener); result = emitter.on(event, listener); result = emitter.once(event, listener); result = emitter.prependListener(event, listener); result = emitter.prependOnceListener(event, listener); result = emitter.removeListener(event, listener); result = emitter.off(event, listener); result = emitter.removeAllListeners(); result = emitter.removeAllListeners(event); result = emitter.setMaxListeners(42); } { let result: number; result = events.EventEmitter.defaultMaxListeners; result = events.EventEmitter.listenerCount(emitter, event); // deprecated const promise: Promise<any> = events.once(new events.EventEmitter(), 'error'); result = emitter.getMaxListeners();