2.0.0 • Published 4 years ago

yaff-events v2.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
4 years ago

yaff-events

Simple es6 events engine with interop support - DOM, nodejs, backbone and othres.
Inspired by backbone.js and also backbone compatible.

Install

with npm

npm i yaff-events

with yarn

yarn add yaff-events

Reference

The API is actually the same as in Backbone.
Anyway, the details are here -> reference

Named exports

  • Events mixin
  • setInterop method

How to use

import { Events } from 'yaff-events';

class MyClass {}
Object.assign(MyClass.prototype, Events);


const instance = new MyClass();
const another = new MyClass();

// registering event callback
instance.on('event', () => { console.log('event!') });
// triggering event
instance.trigger('event');
// console:
// event!

another.listenTo(instance, 'event', () => { console.log('once more!') })
instance.trigger('event');
// console:
// event!
// once more

Events mixin

MethodDescription
onRegisters event(s) callbacks
onceRegisters event(s) callbacks which will be invoked once
offRemoves registered callbacks
listenToRegisters event(s) callbacks for given emitter
listenToOnceRegisters event(s) callbacks for given emitter which will be invoked once
stopListeningRemoves registered callbacks for given emitter
triggerTriggers registered event's callbacks
triggerMethodTriggers registered event's callbacks and invokes emitter's event associated methods
getOnMethodReturns event associated method if any. Feel free to override to provide own logic

setInterop method

Use this method for defining interop behavior. Also there is a default one which tries to use emitter's on and off.
For more details check reference