summaryrefslogtreecommitdiff
path: root/packages/renderers/renderer-solid
diff options
context:
space:
mode:
Diffstat (limited to 'packages/renderers/renderer-solid')
-rw-r--r--packages/renderers/renderer-solid/client.js7
-rw-r--r--packages/renderers/renderer-solid/server.js2
2 files changed, 6 insertions, 3 deletions
diff --git a/packages/renderers/renderer-solid/client.js b/packages/renderers/renderer-solid/client.js
index f4cdb4ead..9aa0ecbb8 100644
--- a/packages/renderers/renderer-solid/client.js
+++ b/packages/renderers/renderer-solid/client.js
@@ -1,8 +1,11 @@
import { hydrate, createComponent } from 'solid-js/web';
export default (element) => (Component, props, childHTML) => {
- const children = document.createElement('astro-fragment');
- children.innerHTML = childHTML;
+ let children;
+ if (childHTML != null) {
+ children = document.createElement('astro-fragment');
+ children.innerHTML = childHTML;
+ }
// Using Solid's `hydrate` method ensures that a `root` is created
// in order to properly handle reactivity. It also handles
diff --git a/packages/renderers/renderer-solid/server.js b/packages/renderers/renderer-solid/server.js
index 101f3480a..238d7531a 100644
--- a/packages/renderers/renderer-solid/server.js
+++ b/packages/renderers/renderer-solid/server.js
@@ -16,7 +16,7 @@ function renderToStaticMarkup(Component, props, children) {
...props,
// In Solid SSR mode, `ssr` creates the expected structure for `children`.
// In Solid client mode, `ssr` is just a stub.
- children: ssr(`<astro-fragment>${children}</astro-fragment>`),
+ children: children != null ? ssr(`<astro-fragment>${children}</astro-fragment>`) : children,
})
);
return { html: html + `<script>window._$HYDRATION||(window._$HYDRATION={events:[],completed:new WeakSet})</script>` };