You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// Emit the eventseventEmitter.emit('greet','Amy',16);// It returns: [`Hi! my name is Amy, I'm 16 years old`]
off(name?: string | string[]): this
// Off the events (off all of the events if the name is undefined)eventEmitter.off('greet');eventEmitter.emit('greet','Amy',16);// It returns: []// Emit multi-eventseventEmitter.on('theFirst',()=>'The first event');eventEmitter.on('theSecond',()=>'The second event');eventEmitter.emit(['theFirst','theSecond']);// It returns: ['The first event', 'The second event']
// Emit the events in async mode, it will return the result of Promise.alleventEmitter.on('whoAmI',()=>newPromise((resolve)=>setTimeout(()=>resolve('Hmm! human'))));// Default priority is NORMAL (25)eventEmitter.on('whoAmI',()=>`I'm god!`,EventEmitter.HIGH);// Set the priority is higher (100)awaiteventEmitter.emitAsync('whoAmI');// It returns: [`I'm god!`, 'Hmm! human']
// The event will fire in sequentially, the next event will be fired after the previous event firedletisFirstFired=false;eventEmitter.on('sequently',()=>newPromise((resolve)=>setTimeout(()=>resolve((isFirstFired=true)),100)));eventEmitter.on('sequently',()=>newPromise((resolve)=>setTimeout(()=>resolve(isFirstFired ? 'OK' : 'OOPS!'),50)));awaiteventEmitter.emitAsync('sequently');// It returns: [true, 'OOPS!']awaiteventEmitter.emitAsyncSequently('sequently');// It returns: [true, 'OK']
open(name?: string | string[]): this
// Re-open the events (open all of the events if the name is undefined)eventEmitter.open('greet');eventEmitter.emit('greet','Amy',16);// It returns: [`Hi! my name is Amy, I'm 16 years old`]
remove(name: string | string[]): this
// Remove the events, similar off but the events will be removed and can't re-open (remove all of the events if the name is undefined)eventEmitter.remove('greet');eventEmitter.emit('greet','Amy',16);// It returns: []eventEmitter.open('greet');eventEmitter.emit('greet','Amy',16);// It returns: []
once(name: string, handler: EventHandler['handler']): this
// Trigger the event in the first time then remove iteventEmitter.once('onlyOne',()=>'The first time');eventEmitter.emit('onlyOne');// It returns: ['The first time']eventEmitter.emit('onlyOne');// It returns: []