diff --git a/packages/core/src/event_delegation_utils.ts b/packages/core/src/event_delegation_utils.ts index f4d296b33f8..9e141081033 100644 --- a/packages/core/src/event_delegation_utils.ts +++ b/packages/core/src/event_delegation_utils.ts @@ -9,7 +9,7 @@ // tslint:disable:no-duplicate-imports import {EventContract} from '@angular/core/primitives/event-dispatch'; import {Attribute} from '@angular/core/primitives/event-dispatch'; -import {InjectionToken, Injector} from './di'; +import {InjectionToken} from './di'; import {RElement} from './render3/interfaces/renderer_dom'; export const DEFER_BLOCK_SSR_ID_ATTRIBUTE = 'ngb'; @@ -20,16 +20,6 @@ declare global { } } -export function invokeRegisteredDelegationListeners(event: Event) { - const handlerFns = (event.currentTarget as Element)?.__jsaction_fns?.get(event.type); - if (!handlerFns) { - return; - } - for (const handler of handlerFns) { - handler(event); - } -} - export function setJSActionAttributes( nativeElement: Element, eventTypes: string[], @@ -112,7 +102,7 @@ export const JSACTION_EVENT_CONTRACT = new InjectionToken( export function invokeListeners(event: Event, currentTarget: Element | null) { const handlerFns = currentTarget?.__jsaction_fns?.get(event.type); - if (!handlerFns) { + if (!handlerFns || !currentTarget?.isConnected) { return; } for (const handler of handlerFns) {