Open KotoriK opened 4 weeks ago
Yeah this needs a validation error. We can't really fix it as it is a browser correction. So far we only look for elements allowed in other elements using this package: https://github.com/MananTank/validate-html-nesting. Elements that can't accept text directly isn't a part of it. So this is a different sort of check.
Describe the bug
See this JSX:
In the template above, a
<tr/>
has a text node as its child. As expected, malform syntaxes like this should be blocked in build stage. However this syntax somehow passes the validation, and result in a unclosed template like_$template(`<div><table><thead><tr>Name</tr></thead><tbody><tr><td>iPhone`)
. It will cause any insert efforts failed withTypeError: Cannot read properties of null (reading 'nextSibling')
, since the template is not correct and browser explain it to something not expected.Your Example Website or App
https://codesandbox.io/p/devbox/great-leaf-tyf99q?file=%2Fsrc%2FApp.tsx%3A21%2C21-21%2C51
Steps to Reproduce the Bug or Issue
Expected behavior
Templates should be correctly generated, or a JSX validation error should be thrown.
Screenshots or Videos
No response
Platform
Additional context
No response