Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Custom event logging for Javascript frameworks

Imagine I have a web application with nice components coded up with your favorite Javascript library. I make heavy use of custom events to reduce the dependencies between these components so you can easily place them in multiple contexts, repeat them on the page, and/or nest them as I see fit.

This is a lovely picture, but debugging can be quite a pain, as I haven't found a way to do logging of my custom events. Ideally, I would like to be able to turn on logging in my framework of choice (I use Prototype, currently), and then get a running log of fired and observed events at any point or points in the DOM.

I've been discussing this with other F2E's and a few approaches have been tried:

  • Visual Event is a bookmarklet that does a good job of visualizing where events are bound, but doesn't offer a runtime log.
  • Antenna Is just such a log, but seems a bit buggy and requires modification of the prototype library itself, which feels like a hack.

How do I go about getting the custom logging I want?

like image 980
Eric Nguyen Avatar asked Dec 02 '25 05:12

Eric Nguyen


2 Answers

You probably using some X.fireEvent method which is (probably-not familiar with your FW) defined in the Object.prototype. I would investigate the approach to override this one method with your version which will do the log stuff.

like image 61
Itay Moav -Malimovka Avatar answered Dec 03 '25 18:12

Itay Moav -Malimovka


If you're using Prototype, I would wrap a logging function around document.fire.

like image 20
wombleton Avatar answered Dec 03 '25 17:12

wombleton



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!