npm.io
0.0.1 • Published 6 years ago

@livestd/simple-event-model

Licence
MIT
Version
0.0.1
Deps
0
Size
10 kB
Vulns
0
Weekly
0

NPM

Simple event model

Installation

npm install --save @livestd/simple-event-model

Simple Event Model

Usage

import EmitterModel from '@livestd/simple-event-model';

enum Events {
  select = 'select'
}
type EventsType = keyof typeof Events;

class Model extends EmitterModel<EventsType> {
  constructor() {
    super();
  }
  listenSelect = (id: string, callback: (value: string) => void) => {
    this.listen({ id: id, event: Events.select, callback: callback });
  };
  emitSelect = (value: string) => {
    this.emit({ event: CategoryEvents.select, data: value });
  };
}

const model = new Model();

model.listenEvent("1", (v) => console.log(v));
model.emitSelect("test")