From 72281ae5514d916df227da633c66261c780ee59f Mon Sep 17 00:00:00 2001 From: Julien Oculi Date: Tue, 2 Jul 2024 13:06:56 +0200 Subject: [PATCH] fix(island): :bug: prevent displaying fallback when `Suspense` is loaded --- islands/Suspens.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/islands/Suspens.tsx b/islands/Suspens.tsx index d2e2c80..779f8f3 100644 --- a/islands/Suspens.tsx +++ b/islands/Suspens.tsx @@ -27,8 +27,10 @@ export default function Suspense( }, ) { const displayed = useSignal(loader) + let loaded = false signal?.addEventListener('abort', () => { + if (loaded) return try { signal.throwIfAborted() } catch (error) { @@ -40,6 +42,7 @@ export default function Suspense( .then((element) => { if (signal?.aborted) return displayed.value = element + loaded = true }) .catch((error) => { if (signal?.aborted) return