developit / undom

🍩 1kb minimally viable DOM Document implementation
https://npm.im/undom
MIT License
662 stars 25 forks source link

Support innerHTML in serialization recipe #7

Open Stanback opened 7 years ago

Stanback commented 7 years ago

I understand you don't want to support serialization in this project which makes sense. However, when experimenting with the example recipe I've noticed an issue when serializing the document after Preact mutates it. I end up with elements that have both innerHTML and childNodes[] defined. The innerHTML value seems to have not been cleaned up. I'm not sure where or why this is happening exactly. Any thoughts?

I've added innerHTML and void elements to my implementation here: https://gist.github.com/Stanback/3bb0b19b299668ce0e08922a8ab6876e

developit commented 7 years ago

Ah - good call, the serializer should at least support innerHTML. FWIW I have been meaning to make undom pluggable for some time now - the thoughts were outlined here: https://github.com/developit/undom/issues/3#issuecomment-233199487

One benefit of this would be that we could take your solution and bundle it in as a undom/plugins/serialization plugin.