Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
component-emitter
Advanced tools
Package description
The component-emitter package is a simple event emitter implementation that allows objects to subscribe to events, emit events, and remove event listeners. It is often used to add observer pattern capabilities to objects, enabling event-driven programming.
Event subscription
This feature allows an object to listen for specific events using the 'on' method. When the event is emitted, the callback function is called.
const Emitter = require('component-emitter');
let emitter = new Emitter();
emitter.on('event', function(message) {
console.log(message);
});
Event emission
This feature allows an object to emit an event, optionally passing arguments to the event listeners.
emitter.emit('event', 'Hello World!');
One-time event subscription
This feature allows an object to listen for an event only once. After the event is emitted and the listener is invoked, the listener is removed.
emitter.once('event', function(message) {
console.log(message);
});
Event unsubscription
This feature allows an object to stop listening for specific events using the 'off' method.
function listener(message) {
console.log(message);
}
emitter.on('event', listener);
emitter.off('event', listener);
The 'events' package is Node.js's core EventEmitter class for managing and emitting events. It is similar to component-emitter but is built into Node.js and provides a more extensive API.
EventEmitter3 is a high-performance event emitter. It offers a similar API to component-emitter but focuses on performance and is optimized for modern JavaScript engines.
Wolfy87's EventEmitter is an implementation of the EventEmitter module found in Node.js but can be used in the browser. It has additional features like namespacing events, but it's larger in size compared to component-emitter.
Readme
Event emitter component.
$ component install component/emitter
The Emitter
may also be used as a mixin. For example
a "plain" object may become an emitter, or you may
extend an existing prototype.
As an Emitter
instance:
var Emitter = require('emitter');
var emitter = new Emitter;
emitter.emit('something');
As a mixin:
var Emitter = require('emitter');
var user = { name: 'tobi' };
Emitter(user);
user.emit('im a user');
As a prototype mixin:
var Emitter = require('emitter');
Emitter(User.prototype);
Register an event
handler fn
.
Register a single-shot event
handler fn
,
removed immediately after it is invoked the
first time.
event
and fn
to remove a listener.event
to remove all listeners on that event.Emit an event
with variable option args.
Return an array of callbacks, or an empty array.
Check if this emitter has event
handlers.
MIT
FAQs
Simple event emitter
The npm package component-emitter receives a total of 19,067,619 weekly downloads. As such, component-emitter popularity was classified as popular.
We found that component-emitter demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 33 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.