diff --git a/src/common/EventEmitter.ts b/src/common/EventEmitter.ts index 979a6464..29e931d2 100644 --- a/src/common/EventEmitter.ts +++ b/src/common/EventEmitter.ts @@ -22,7 +22,7 @@ export interface IEventWithEmitter extends IEventEmitter, IEv } export class EventEmitter implements IEventEmitter { - private _listeners: IListener[] = []; + private readonly _listeners: IListener[] = []; private _event?: IEvent; private _disposed: boolean = false; @@ -82,6 +82,9 @@ export class EventEmitter implements IEventEmitter { export function initEvent(): IEventWithEmitter { const emitter = new EventEmitter(); const event = emitter.event; + Object.defineProperty(event, '_listeners', { + value: (emitter as any)._listeners + }); Object.defineProperty(event, 'fire', { value: emitter.fire.bind(emitter) });