summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.changeset/metal-penguins-drum.md5
-rw-r--r--packages/integrations/react/client.js4
2 files changed, 9 insertions, 0 deletions
diff --git a/.changeset/metal-penguins-drum.md b/.changeset/metal-penguins-drum.md
new file mode 100644
index 000000000..cd740f6e5
--- /dev/null
+++ b/.changeset/metal-penguins-drum.md
@@ -0,0 +1,5 @@
+---
+"@astrojs/react": patch
+---
+
+Fixes an issue where passing void elements (img, etc..) did not work with the `experimentalReactChildren` option enabled
diff --git a/packages/integrations/react/client.js b/packages/integrations/react/client.js
index cef488c83..90e4ceb83 100644
--- a/packages/integrations/react/client.js
+++ b/packages/integrations/react/client.js
@@ -15,6 +15,10 @@ function createReactElementFromDOMElement(element) {
for (const attr of element.attributes) {
attrs[attr.name] = attr.value;
}
+ // If the element has no children, we can create a simple React element
+ if (element.firstChild === null) {
+ return createElement(element.localName, attrs);
+ }
return createElement(
element.localName,