@barusu/event-busdeprecated

simple event bus

Usage no npm install needed!

<script type="module">
  import barusuEventBus from 'https://cdn.skypack.dev/@barusu/event-bus';
</script>

README

@barusu/event-bus


Install

npm install --save @barusu/event-bus
  • yarn

    yarn add @barusu/event-bus
    

Usage

Examples

  • Basic

    import { SimpleEvent, SimpleEventBus, SimpleEventHandler } from '@barusu/event-bus'
    
    enum EventTypes {
      INIT = 'INIT',
      EXIT = 'EXIT',
    }
    
    const eventBus = new SimpleEventBus<EventTypes>()
    
    const handle: EventHandler<EventTypes> = (evt: SimpleEvent<EventTypes>) => {
      console.log('evt:', evt)
    }
    
    // Listen for specific event
    eventBus.on(EventTypes.INIT, handle)
    
    // Listen for specific event, and only need to be called once
    eventBus.once(EventTypes.INIT, handle)
    
    // Listen for all events
    eventBus.subscribe(handle, true)
    
    // Remove listener
    eventBus.removeEventListener(EventTypes.INIT, handle)
    
    // Remove subscriber
    eventBus.unsubscribe(handle)