diff --git a/src/compiler/compile/nodes/EventHandler.ts b/src/compiler/compile/nodes/EventHandler.ts index 6cf867daa5..144a3a97ca 100644 --- a/src/compiler/compile/nodes/EventHandler.ts +++ b/src/compiler/compile/nodes/EventHandler.ts @@ -44,13 +44,13 @@ export default class EventHandler extends Node { } else { const name = component.get_unique_name(`${sanitize(this.name)}_handler`); - component.add_var({ - name, - internal: true, - referenced: true - }); - if (this.name !== '$$any') { + component.add_var({ + name, + internal: true, + referenced: true + }); + component.partly_hoisted.push(deindent` function ${name}(event) { @bubble($$self, event); diff --git a/src/compiler/compile/render_dom/wrappers/shared/add_event_handlers.ts b/src/compiler/compile/render_dom/wrappers/shared/add_event_handlers.ts index cf46366ca2..862f02b674 100644 --- a/src/compiler/compile/render_dom/wrappers/shared/add_event_handlers.ts +++ b/src/compiler/compile/render_dom/wrappers/shared/add_event_handlers.ts @@ -24,9 +24,7 @@ export default function add_event_handlers( } else if (handler.name === '$$any') { block.any_event_elements.push(target); // This isn't required but listen is treeshaken otherwise - block.event_listeners.push( - `@listen(${target}, "${handler.name}", ${snippet})` - ); + block.event_listeners.push(`@listen`); } else { block.event_listeners.push( `@listen(${target}, "${handler.name}", ${snippet})`