diff --git a/src/components/micro-frame-slot/component/node.marko b/src/components/micro-frame-slot/component/node.marko
index 0c4a33e..2682180 100644
--- a/src/components/micro-frame-slot/component/node.marko
+++ b/src/components/micro-frame-slot/component/node.marko
@@ -40,10 +40,12 @@ $ {
$ out.bf("@_", component, true);
-
-
+
+
+
+
+
-
$ out.ef();
diff --git a/src/components/micro-frame-slot/component/web.component.ts b/src/components/micro-frame-slot/component/web.component.ts
index 80d5210..130abb5 100644
--- a/src/components/micro-frame-slot/component/web.component.ts
+++ b/src/components/micro-frame-slot/component/web.component.ts
@@ -65,6 +65,10 @@ export = {
this.slot = streamSource.slot(this.slotId);
+ if (!this.slot) {
+ return;
+ }
+
writable = getWritableDOM(
this.el,
// references the start of the preserved Marko fragment.
diff --git a/src/components/micro-frame-sse/__tests__/__snapshots__/micro-frame-sse/ssr-delayed-slot/renders.expected/loading.1.html b/src/components/micro-frame-sse/__tests__/__snapshots__/micro-frame-sse/ssr-delayed-slot/renders.expected/loading.1.html
index b4ebcac..0a93184 100644
--- a/src/components/micro-frame-sse/__tests__/__snapshots__/micro-frame-sse/ssr-delayed-slot/renders.expected/loading.1.html
+++ b/src/components/micro-frame-sse/__tests__/__snapshots__/micro-frame-sse/ssr-delayed-slot/renders.expected/loading.1.html
@@ -29,15 +29,20 @@
+
\ No newline at end of file
diff --git a/src/components/micro-frame-sse/__tests__/fixtures/ssr-delayed-slot/index.marko b/src/components/micro-frame-sse/__tests__/fixtures/ssr-delayed-slot/index.marko
index c93fb47..b61f548 100644
--- a/src/components/micro-frame-sse/__tests__/fixtures/ssr-delayed-slot/index.marko
+++ b/src/components/micro-frame-sse/__tests__/fixtures/ssr-delayed-slot/index.marko
@@ -11,8 +11,21 @@
[e.lastEventId, e.data]) />
setTimeout(res, 1000)))>
<@then>
-
-
+
+ <@catch|err|>
+ Slot_1 Error: ${err.message}
+ @catch>
+
+
+ <@catch|err|>
+ Slot_2 Error: ${err.message}
+ @catch>
+
+
+ <@catch|err|>
+ non_exist Error: ${err.message}
+ @catch>
+
@then>