1.1.1 • Published 6 years ago
has-listener v1.1.1
has-listener
has-listener
is a little util, useful in combination with EventEmitter
.
It allows to do some operation only if an event listener is added to an emitter.
npm i has-listener --save
Why
Let's embrace the Observer Effect! 👀 With this little tool you can let your classes do different things depending on whether there is an observer or not.
Usage
const { hasListener } = require('has-listener')
const { EventEmitter } = require('events')
const emitter = new EventEmitter()
function onHasListener (hasListener) {
console.log(`hasListener: ${hasListener}`)
}
const stop = hasListener(emitter, 'loop', onHasListener) // hasListener: false
emitter.on('loop', () => {}) // hasListener: true
emitter.removeAllListeners() // hasListener: false
stop() // stops updating
emitter.on('loop', () => {}) // nothing, because stop was called.