als-event-emitter

3.0.0 • Public • Published

als-event-emitter

als-event-emitter is a lightweight, powerful implementation of an event emitter system, designed to be easy to use and extendable. It provides the ability to listen for and emit events in a Node.js environment.

Installation

Install using npm:

npm install als-event-emitter

Import

Import als-event-emitter in your Node.js project and create an instance of EventEmitter:

const EventEmitter = require('als-event-emitter');
const emitter = new EventEmitter();

As a Standard Script in the Browser (Global Variable)

If you want to include the script in a browser without using any module system, you can use the event-emitter.js:

Place the event-emitter.js in a directory that your browser can access.

In your HTML:

<script src="./node_modules/als-event-emitter/emitter.js"></script>
<script>
  // After the script has been loaded, EventEmitter will be available as a global variable
  const myEmitter = new EventEmitter();
</script>

API

on(eventName, listener)

Registers a listener for the specified event.

  • eventName (String): Name of the event.
  • listener (Function): Callback function.

once(eventName, listener)

Registers a one-time listener for the specified event.

  • eventName (String): Name of the event.
  • listener (Function): Callback function.

off(eventName)

Removes all listeners for the specified event.

  • eventName (String): Name of the event.

removeListener(listener)

Removes the specified listener from all events.

  • listener (Function): Callback function to be removed.

removeAllListeners()

Removes all registered listeners for all events.

emit(eventName, ...args)

Emits the specified event with optional arguments.

  • eventName (String): Name of the event.
  • ...args: Arguments to pass to the event listeners.

onAny(listener, [once])

Registers a listener that will be triggered for any emitted event, even if event not exists.

  • listener (Function): Callback function.
  • once (Boolean): If true, the listener will be triggered only once.

onceAny(listener)

Registers a one-time listener for any emitted event, even if event not exists.

  • listener (Function): Callback function.

has(eventName)

Checks if there are any listeners registered for the specified event.

  • eventName (String): Name of the event.

Examples

Basic Usage

const emitter = new EventEmitter();

emitter.on('data', (data) => {
  console.log(`Received data: ${data}`);
});

emitter.emit('data', 'Hello World');

Using once

emitter.once('init', () => {
  console.log('Initialization event');
});

emitter.emit('init');
emitter.emit('init'); // This won't trigger the callback again.

Removing Listeners

const callback = (data) => {
  console.log(`Received: ${data}`);
};

emitter.on('data', callback);
emitter.removeListener(callback);

emitter.emit('data', 'This will not be logged');

Package Sidebar

Install

npm i als-event-emitter

Weekly Downloads

22

Version

3.0.0

License

ISC

Unpacked Size

21.2 kB

Total Files

4

Last publish

Collaborators

  • alexsorkin