JSFiddle - React, Tailwind, and code Playground

CoffeeScript

class OurDispatcher
  constructor: ->
    @dispatchHandlers = []
  on: (eventName, handler) ->
    switch eventName
      when "dispatch" then @dispatchHandlers.push(handler)
      when "somethingElse" then alert('write something for this event :)')
  dispatch: ->
    for handler in @dispatchHandlers
      setTimeout (
        handler
      ), 0
    return
      
dispatcher = new OurDispatcher()

dispatcher.on "dispatch", ->
  document.body.innerHTML += "DISPATCHED</br>"
    
dispatcher.on "dispatch", ->
  document.body.innerHTML += "DISPATCHED AGAIN</br>"
        
dispatcher.dispatch()