From 068405191eeaf95cf5587a9dbcc19bb9abf664dc Mon Sep 17 00:00:00 2001 From: rster20002 Date: Thu, 29 Jul 2021 08:57:32 +0200 Subject: [PATCH] Fixed issue caused by if statements Changed how component is accessed when attaching error handler to a listener --- src/compiler/compile/render_dom/Block.ts | 2 +- src/compiler/compile/render_dom/index.ts | 2 +- src/runtime/internal/Component.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/compiler/compile/render_dom/Block.ts b/src/compiler/compile/render_dom/Block.ts index 4f7def88a4..00440b71f3 100644 --- a/src/compiler/compile/render_dom/Block.ts +++ b/src/compiler/compile/render_dom/Block.ts @@ -468,7 +468,7 @@ export default class Block { this.add_variable(dispose); this.event_listeners.forEach((event_listener: any) => { - event_listener.arguments[2] = x`@attach_error_handler(${event_listener.arguments[0]}, #component, ${event_listener.arguments[2]})`; + event_listener.arguments[2] = x`@attach_error_handler(${event_listener.arguments[0]}, @get_current_component(), ${event_listener.arguments[2]})`; }); if (this.event_listeners.length === 1) { diff --git a/src/compiler/compile/render_dom/index.ts b/src/compiler/compile/render_dom/index.ts index 28dc3b52fa..68bff74f90 100644 --- a/src/compiler/compile/render_dom/index.ts +++ b/src/compiler/compile/render_dom/index.ts @@ -329,7 +329,7 @@ export default function dom( const has_create_fragment = component.compile_options.dev || block.has_content(); if (has_create_fragment) { body.push(b` - function create_fragment(#ctx, #component) { + function create_fragment(#ctx) { ${block.get_contents()} } `); diff --git a/src/runtime/internal/Component.ts b/src/runtime/internal/Component.ts index 15d14b3a64..f3c763228d 100644 --- a/src/runtime/internal/Component.ts +++ b/src/runtime/internal/Component.ts @@ -189,7 +189,7 @@ export function init(component, options, instance, create_fragment, not_equal, p run_all($$.before_update); // `false` as a special case of no DOM component - $$.fragment = create_fragment ? create_fragment($$.ctx, component) : false; + $$.fragment = create_fragment ? create_fragment($$.ctx) : false; if (options.target) { if (options.hydrate) {