@figliolia/event-emitter Installationnpm i -S @figliolia/event-emitter
yarn add @figliolia/event-emitter Basic Usage Creating an instanceimport { EventEmitter } from "@figliolia/event-emitter" ;
export const MyEmitter = new EventEmitter ( ) ; Emitting Eventsimport { MyEmitter } from "./path/to/myEmitter" ;
MyEmitter. emit ( "my-event" , ) ; Subscribing to Eventsimport { MyEmitter } from "./path/to/myEmitter" ;
const ID = MyEmitter. on ( "my-event" , ( data) => { } ) ;
MyEmitter. off ( "my-event" , ID ) ; With Strict Typescript Creating a type-safe Instanceimport { EventEmitter } from "@figliolia/event-emitter" ;
type MyEvents = {
event: {
dataPoint: number ;
anotherDataPoint: any
} ,
}
export const MyEmitter = new EventEmitter< MyEvents> ( ) ; Emitting type-safe Eventsimport { MyEmitter } from "./path/to/myEmitter" ;
MyEmitter. emit ( "event" , {
dataPoint: 2 ,
anotherDataPoint: [ 1 , 2 , 3 ]
} ) ;
MyEmitter. emit ( "event" , {
dataPoint: "one" ,
} ) ;
MyEmitter. emit ( "another-event" , ) ; Subscribing to Eventsimport { MyEmitter } from "./path/to/myEmitter" ;
MyEmitter. on ( "event" , ( data) => {
} ) ;
MyEmitter. on ( "another-event" , ) ;