JSFiddle - React, Tailwind, and code Playground

by Valentin Radulescu

JavaScript

//I'm using the jQuery event system to create my eventEmitter
  (function($) {   
    $.eventEmitter = {
      trigger: function(evt, data) {
        $(this).trigger(evt, data);
      },
      listen: function(evt, handler) {
        $(this).bind(evt, handler);
      },
      stop: function(evt, handler) {
        $(this).unbind(evt, handler);
      }
    };   
  }(jQuery));
  
  EventEmitter = function(){};
  $.extend(EventEmitter.prototype, $.eventEmitter);
  
  var ee = new EventEmitter();
  //listen for even
  ee.listen("message", function(evt, data){ alert("You received a message from "+ data + "!"); });  
  //trigger event and pass in data
  ee.trigger("message", "Valentin");
  //stop listening for event
  ee.stop("message");
  //future requests won't trigger any event
  ee.trigger("message", "Some Random Guy");