Echo JS 0.11.0

<~>
tracker1 2676 days ago. link 1 point
Pretty cool, but wonder how it handles synthetic events compared to react... It seems to me synthetic events and supported nodes should be as close to react as possible.

I'm also curious if this supports svg and associated elements as well.

Replies

manabu 2674 days ago. link 1 point
Supports SVG, but there's no synthetic event system. React's synthetic events exist due to browser incompatibilities, but since picodom is only IE10+ and up, it has no use case for it.
tracker1 2674 days ago. link 1 point
So picodom will register and unregister callbacks/events to the dom nodes on creation/destruction?
manabu 2673 days ago. link 1 point
One more thing: React implements a synthetic event system which is agnostic of the renderers and works both with React DOM and React Native. This is irrelevant in picodom, since there is no picodom native or will be.
manabu 2674 days ago. link 1 point
If there are no direct references to a particular DOM node elsewhere in your code, then the DOM node will be GC'ed after they are detached from the tree using removeChild.

Also, picodom _does not_ use addEventListener/removeEventListener, instead it sets the function on the element like this:

    element.onclick = data.onclick

Because picodom manages its own nodes and they are created declaratively by the user (as opposed to imperatively) there is no scenario where you could have multiple event handlers of a single event attached to a DOM node, unless you use a lifecycle event to access a DOM node and use addEventListener yourself on it, but then that's your problem. 

So, tl;dr it's fine.
tracker1 2671 days ago. link 2 points
Thanks, may actually give this a closer look with a small UI I'll be working on soon.