0.2.4 • Published 5 years ago

@dadajam4/ev v0.2.4

Weekly downloads
12
License
MIT
Repository
github
Last release
5 years ago

ev

Simple Class basesd event observer.(With TypeScript type injection)

docs

Usage

Install package

npm install @dadajam4/ev --save

In your code

import EV from '@dadajam4/dd-ev';

const ev = new EV();
ev.on('someEvent', e => {
  console.log(e);
  // ---> 10
  // ---> { someKey: 'someValue' }
});
ev.emit('someEvent', 10);
ev.emit('someEvent', { someKey: 'someValue' });

// Extends Class
class SomeClass extends EV {}

TypeScript

class SomeClass extends EV<{event1: string, event2: boolean}> {
  constructor() {
    super();
    this.emit('event1', 5); // ng
    this.emit('event1', 'string'); // ok
    this.on('event2', event => {
      const var1: string = event; // ng
      const var2: boolean = event; // ok
    });
  }
}