summaryrefslogtreecommitdiff
path: root/packages/renderers/renderer-vue
diff options
context:
space:
mode:
authorGravatar Nate Moore <natemoo-re@users.noreply.github.com> 2021-12-02 10:30:15 -0600
committerGravatar GitHub <noreply@github.com> 2021-12-02 10:30:15 -0600
commitac3e870280e983a7977da79b6eec0568d38d8420 (patch)
tree2c7c95af762f4dceef8abd5f5c17cdc6dce80367 /packages/renderers/renderer-vue
parent62a5e98c9008a1ac88c3c38db64b74723f8fd422 (diff)
downloadastro-ac3e870280e983a7977da79b6eec0568d38d8420.tar.gz
astro-ac3e870280e983a7977da79b6eec0568d38d8420.tar.zst
astro-ac3e870280e983a7977da79b6eec0568d38d8420.zip
fix: renderer behavior with no children (#2078)
* fix: renderer behavior with no children * [ci] Prettier fix * Force CI * fix: properly handle falsy values * [ci] Prettier fix * chore: force ci * [experiment] netlify ignore Co-authored-by: GitHub Action <github-action@users.noreply.github.com>
Diffstat (limited to 'packages/renderers/renderer-vue')
-rw-r--r--packages/renderers/renderer-vue/client.js6
-rw-r--r--packages/renderers/renderer-vue/server.js6
2 files changed, 10 insertions, 2 deletions
diff --git a/packages/renderers/renderer-vue/client.js b/packages/renderers/renderer-vue/client.js
index dfbd48a30..edda137cd 100644
--- a/packages/renderers/renderer-vue/client.js
+++ b/packages/renderers/renderer-vue/client.js
@@ -5,6 +5,10 @@ export default (element) => (Component, props, children) => {
delete props['class'];
// Expose name on host component for Vue devtools
const name = Component.name ? `${Component.name} Host` : undefined;
- const app = createSSRApp({ name, render: () => h(Component, props, { default: () => h(StaticHtml, { value: children }) }) });
+ const slots = {};
+ if (children != null) {
+ slots.default = () => h(StaticHtml, { value: children });
+ }
+ const app = createSSRApp({ name, render: () => h(Component, props, slots) });
app.mount(element, true);
};
diff --git a/packages/renderers/renderer-vue/server.js b/packages/renderers/renderer-vue/server.js
index b4254458d..83e389b5d 100644
--- a/packages/renderers/renderer-vue/server.js
+++ b/packages/renderers/renderer-vue/server.js
@@ -7,7 +7,11 @@ function check(Component) {
}
async function renderToStaticMarkup(Component, props, children) {
- const app = createSSRApp({ render: () => h(Component, props, { default: () => h(StaticHtml, { value: children }) }) });
+ const slots = {};
+ if (children != null) {
+ slots.default = () => h(StaticHtml, { value: children });
+ }
+ const app = createSSRApp({ render: () => h(Component, props, slots) });
const html = await renderToString(app);
return { html };
}