From 83b5c090907d271e33d09d0179dbf742d6016f71 Mon Sep 17 00:00:00 2001 From: pooya parsa Date: Thu, 10 Nov 2022 13:28:20 +0100 Subject: [PATCH] fix(nuxt): preserve render errors (#8884) * fix(nuxt): preserve render errors * simplify logic --- packages/nuxt/src/core/runtime/nitro/renderer.ts | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/packages/nuxt/src/core/runtime/nitro/renderer.ts b/packages/nuxt/src/core/runtime/nitro/renderer.ts index ca596b3e88a..092900d521e 100644 --- a/packages/nuxt/src/core/runtime/nitro/renderer.ts +++ b/packages/nuxt/src/core/runtime/nitro/renderer.ts @@ -172,18 +172,13 @@ export default defineRenderHandler(async (event) => { writeEarlyHints(event, link) } - const _rendered = await renderer.renderToString(ssrContext).catch((err) => { - if (!ssrError) { - // Use explicitly thrown error in preference to subsequent rendering errors - throw ssrContext.payload?.error || err - } + const _rendered = await renderer.renderToString(ssrContext).catch((error) => { + // Use explicitly thrown error in preference to subsequent rendering errors + throw (!ssrError && ssrContext.payload?.error) || error }) await ssrContext.nuxt?.hooks.callHook('app:rendered', { ssrContext }) // Handle errors - if (!_rendered) { - return undefined! - } if (ssrContext.payload?.error && !ssrError) { throw ssrContext.payload.error }