Feature: Shadow DOM without wrapping DIV element#146
Merged
yandeu merged 5 commits intonanojsx:masterfrom Dec 26, 2024
Merged
Conversation
Member
|
Thanks for your PR! I will check if your update in Also, it looks more like a bug fix than a breaking change to me. |
Contributor
Author
|
yea was not sure if it's a bug fix or a feature. I think it potentially fixes a workaround. :-D |
Member
|
Everything work well, so I will merge it. Thanks a lot again! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Background
I was playing arround with NanoJSX and found in case of using it to create WebCompontents it did wrap them into a
divelement becauseComponent.update()expects the parent to beElement. This adds more elements to the DOM than needed and is not expected to happen when creating a WebComponent.Changes
I did a small change to
Component.update()to get the parent viaoldElements[0].parentNodeinstead ofoldElements[0].parentElement. I then removed the shadowroot conditions inclass.buildEl()andclass.appendEl()indefineAsCustomElements().Tests
The tests are fixed by removing the wrapping
<div>tags. I could not run the e2e tests localy. I only checked if it still works in my local project by mounting a component and do frequentupdate()calls.Breaking Changes
This PR adds a breaking change to the "Shadow DOM" feature if someone expects the wrapping
divto be rendered.