micro-event

A JavaScript Event Emmiter for Node.js and Browsers

Usage no npm install needed!

<script type="module">
  import microEvent from 'https://cdn.skypack.dev/micro-event';
</script>

README

MicroEvent

NPM version Build Status Coverage Status Dependency manager

Installation

Node.js

npm install micro-event

Browser

<script src="dist/micro-event.min.js"></script>

Usage

Node.js

var Event = require('micro-event');

Event
    .on('boom!', function(e){
        console.log(e.type, e.timeStamp);
    })
    .trigger('boom!')
    .trigger(new Event('boom!'));

Event
    .on('ha!', function(e, foo, bar){
        console.log(e.type, foo, bar);
    })
    .trigger('ha!', ['foo', 'bar']);

A demo can be found here.

AMD

dist/micro-event supports AMD envirenment, as long as loaded into your HTML:

require(['MicroEvent'], function(Event) {
    Event.on('...').off('...');
});

A demo can be found here.

Global Object

dist/micro-event will export a window.MicroEvent object if there's no require or module defined.

var Event = window.MicroEvent;
Event.on('...').off('...');

A demo can be found here.

API

new MicroEvent(eventType)

  • eventType: Required, String, the event type to be created.

Create and returns a MicroEvent instance of the specified eventType.

.on(eventType, handler)

  • eventType: Required, String, the event type to be triggered.
  • handler: Required, Function, the handler to be called when event occurs.

Register a handler to the event specified by eventType.

.trigger(eventType[, extraParameters])

  • eventType: Required, String, the event type to be triggered.
  • extraParameters: Optional, Array, extra params passed to the handler above.

Trigger the event specified by eventType, and optionaly pass extraParameters to the handler.

.trigger(event[, extraParameters])

  • event: Required, Event, the MicroEvent instance to be triggered.
  • extraParameters: Optional, Array, extra params passed to the handler above.

Trigger the event, and optioanly pass extraParameters to the handler.

.off()

Clear all event handlers for all event types.

.off(eventType [, handler])

  • eventType: Required, String, the event type to off.
  • handler: Optional, Function, the handler to off.

Remove the handler for the event specified by eventType. If handler is undefined, MicroEvent clears all handlers for the eventType.