README
unherit
Create a custom constructor which can be modified without affecting the original class.
Install
This package is ESM only: Node 12+ is needed to use it and it must be import
ed
instead of require
d.
npm:
npm install unherit
Use
import {EventEmitter} from 'events'
import {unherit} from 'unherit'
// Create a private class which acts just like `EventEmitter`.
var Emitter = unherit(EventEmitter)
Emitter.prototype.defaultMaxListeners = 0
// Now, all instances of `Emitter` have no maximum listeners, without affecting
// other `EventEmitter`s.
new Emitter().defaultMaxListeners === 0 // => true
new EventEmitter().defaultMaxListeners === undefined // => true
new Emitter() instanceof EventEmitter // => true
API
This package exports the following identifiers: unherit
.
There is no default export.
unherit(Super)
Create a custom constructor (Function
) from Super
(Function
) which can be
modified without affecting the original class.