Skip to content

A tiny event manager library based on publish-subscribe pattern.

License

Notifications You must be signed in to change notification settings

xinkule/micro-event-manager

Repository files navigation

micro-event-manager

npm version

A tiny event manager library based on publish-subscribe pattern.

Installation

yarn add micro-event-manager

Usage

import { EventManager } from 'micro-event-manager';

// first create a manager instance
const eventManager = new EventManager();

// then subscribe to an event, it will return an unique key
const key = eventManager.subscribe('log', () => {
  console.log('executed');
});

// trigger the event, the second argument is optional
eventManager.publish('log', 'data');

// you can use the generated key to unsubscribe the event
eventManager.unSubscribe('log', key);

// when you are not sure if the subscription happens before the publishment
// and you want to make sure any published events should be triggered, you can use this function to subscribe
eventManager.ensureTriggeredAndSubscribe('log', () => {
  console.log('executed');
});

About

A tiny event manager library based on publish-subscribe pattern.

Resources

License

Stars

Watchers

Forks

Packages

No packages published