summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Nate Moore <natemoo-re@users.noreply.github.com> 2022-02-07 14:11:32 -0600
committerGravatar GitHub <noreply@github.com> 2022-02-07 15:11:32 -0500
commitd9ac85ea94f8aa24cf1da80292bcacc6cefef5d0 (patch)
tree0a4c2701a3814cd245a8b171dc15d5b7f5cc2c88
parent3f4d54282ffb6ed672cca867ff59e7ca8482a5f4 (diff)
downloadastro-d9ac85ea94f8aa24cf1da80292bcacc6cefef5d0.tar.gz
astro-d9ac85ea94f8aa24cf1da80292bcacc6cefef5d0.tar.zst
astro-d9ac85ea94f8aa24cf1da80292bcacc6cefef5d0.zip
Improve error handling (#2539)
* feat: improve error handling * fix: run renderer
-rw-r--r--packages/astro/src/runtime/server/index.ts5
1 files changed, 5 insertions, 0 deletions
diff --git a/packages/astro/src/runtime/server/index.ts b/packages/astro/src/runtime/server/index.ts
index 6fe61d827..93c908416 100644
--- a/packages/astro/src/runtime/server/index.ts
+++ b/packages/astro/src/runtime/server/index.ts
@@ -216,6 +216,11 @@ There ${plural ? 'are' : 'is'} ${renderers.length} renderer${plural ? 's' : ''}
but ${plural ? 'none were' : 'it was not'} able to server-side render ${metadata.displayName}.
Did you mean to enable ${formatList(probableRendererNames.map((r) => '`' + r + '`'))}?`);
+ } else if (matchingRenderers.length === 1) {
+ // We already know that renderer.ssr.check() has failed
+ // but this will throw a much more descriptive error!
+ renderer = matchingRenderers[0];
+ ({ html } = await renderer.ssr.renderToStaticMarkup(Component, props, children));
} else {
throw new Error(`Unable to render ${metadata.displayName}!