Skip to main content

Class: EventSource<Data>

Implements an event bus, exposing both an observable object (Events) and event emitter (EventTrigger) sides.

Example:

interface CollectionEvents {
addItem: AddItemEvent;
removeItem: RemoveItemEvent;
}

const source = new EventSource<CollectionEvents>();
const events: Events<CollectionEvents> = source;

events.on('addItem', e => { ... });

source.trigger('addItem', { item: someItem });

Type Parameters

Type Parameter

Data

Implements

Constructors

new EventSource()

new EventSource<Data>(): EventSource<Data>

Returns

EventSource<Data>

Methods

off()

off<Key>(eventKey, listener): void

Type Parameters

Type Parameter

Key extends string | number | symbol

Parameters

ParameterType

eventKey

Key

listener

Listener<Data, Key>

Returns

void

Implementation of

Events.off

Defined in

coreUtils/events.ts:114


offAny()

offAny(listener): void

Parameters

ParameterType

listener

AnyListener<Data>

Returns

void

Implementation of

Events.offAny

Defined in

coreUtils/events.ts:121


on()

on<Key>(eventKey, listener): void

Type Parameters

Type Parameter

Key extends string | number | symbol

Parameters

ParameterType

eventKey

Key

listener

Listener<Data, Key>

Returns

void

Implementation of

Events.on

Defined in

coreUtils/events.ts:96


onAny()

onAny(listener): void

Parameters

ParameterType

listener

AnyListener<Data>

Returns

void

Implementation of

Events.onAny

Defined in

coreUtils/events.ts:105


trigger()

trigger<Key>(eventKey, data): void

Type Parameters

Type Parameter

Key extends string | number | symbol

Parameters

ParameterType

eventKey

Key

data

Data[Key]

Returns

void

Implementation of

EventTrigger.trigger

Defined in

coreUtils/events.ts:128