ryansolid / dom-expressions

A Fine-Grained Runtime for Performant DOM Rendering
MIT License
863 stars 125 forks source link

Fragment loses reactivity when using HDE #330

Open wrnrlr opened 2 months ago

wrnrlr commented 2 months ago

There is a bug in the hyper dom expression runtime where sometimes it loses reactivity after one update. In my example I use a context, but I am not sure if it can be reproduced in a different way.

Example

This is strange because as I understand the array is wrapped by h.Fragment

ryansolid commented 1 month ago

Yeah it is an odd one. It has to do with wrapping and unwrapping of h functions which is why we don't see this in other versions.. Like if I change the render callto render(Context(), document.body) it works but other variations don't. What's happening is the Nested Component is getting prematurely released. I'm pretty sure this is related to the change I made a few versions back to properly handle parent child execution order,.. but there is still a bug here.