diff options
author | 2022-02-07 14:11:32 -0600 | |
---|---|---|
committer | 2022-02-07 15:11:32 -0500 | |
commit | d9ac85ea94f8aa24cf1da80292bcacc6cefef5d0 (patch) | |
tree | 0a4c2701a3814cd245a8b171dc15d5b7f5cc2c88 | |
parent | 3f4d54282ffb6ed672cca867ff59e7ca8482a5f4 (diff) | |
download | astro-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.ts | 5 |
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}! |