From b37ec72f8adf130abcde003adda1af26bb7892c2 Mon Sep 17 00:00:00 2001 From: Rodrigo Pimentel <47485736+RodrigoProjects@users.noreply.github.com> Date: Wed, 14 Jun 2023 19:44:43 +0100 Subject: [PATCH] feat(nuxt): emit error in `ssr-error` event (#21547) --- .../src/app/components/client-fallback.server.ts | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/nuxt/src/app/components/client-fallback.server.ts b/packages/nuxt/src/app/components/client-fallback.server.ts index 3f30f32b5f..f4229867c9 100644 --- a/packages/nuxt/src/app/components/client-fallback.server.ts +++ b/packages/nuxt/src/app/components/client-fallback.server.ts @@ -29,15 +29,19 @@ const NuxtClientFallbackServer = defineComponent({ default: () => false } }, - emits: ['ssr-error'], + emits: { + 'ssr-error' (_error: unknown) { + return true + } + }, setup (props, ctx) { const vm = getCurrentInstance() const ssrFailed = ref(false) - onErrorCaptured(() => { + onErrorCaptured((err) => { useState(`${props.uid}`, () => true) ssrFailed.value = true - ctx.emit('ssr-error') + ctx.emit('ssr-error', err) return false }) @@ -50,10 +54,10 @@ const NuxtClientFallbackServer = defineComponent({ } return { ssrFailed, ssrVNodes } - } catch { + } catch (ssrError) { // catch in dev useState(`${props.uid}`, () => true) - ctx.emit('ssr-error') + ctx.emit('ssr-error', ssrError) return { ssrFailed: true, ssrVNodes: [] } } },