Skip to main content

Class: EventBusImpl

Defined in: packages/core/src/event/EventBusImpl.ts:27

Helper for custom events.

It offers public methods for firing custom events and two methods for catching events (e.g. inside view components).

Extends​

Constructors​

Constructor​

new EventBusImpl(window): EventBusImpl

Defined in: packages/core/src/event/EventBusImpl.ts:54

Initializes the custom event helper.

Parameters​

window​

Window

The IMA window helper.

Returns​

EventBusImpl

Overrides​

EventBus.constructor

Accessors​

$dependencies​

Get Signature​

get static $dependencies(): typeof Window[]

Defined in: packages/core/src/event/EventBusImpl.ts:45

Returns​

typeof Window[]

Methods​

fire()​

fire(eventTarget, eventName, data, options): EventBusImpl

Defined in: packages/core/src/event/EventBusImpl.ts:66

Fires a new custom event of the specified name, carrying the provided data.

Note that this method does not prevent the event listeners to modify the data in any way. The order in which the event listeners will be executed is unspecified and should not be relied upon.

Note that the default options are { bubbles: true, cancelable: true }, which is different from the default values used in the native custom events ({ bubbles: false, cancelable: false }).

Parameters​

eventTarget​

EventTarget

The event target at which the event will be dispatched (e.g. element/document/window).

eventName​

string

The name of the event to fire.

data​

any

The data to pass to the event listeners.

options​

EventBusOptions = {}

The override of the default options passed to the constructor of the custom event fired by this event bus. The default options passed to the custom event constructor are { bubbles: true, cancelable: true }.

Returns​

EventBusImpl

This custom event bus.

Throws​

Thrown if the provided event target cannot be used to fire the event.

See​

https://developer.mozilla.org/en-US/docs/Web/API/Event/Event

Overrides​

EventBus.fire


listen()​

listen(eventTarget, eventName, listener): EventBusImpl

Defined in: packages/core/src/event/EventBusImpl.ts:127

Registers the provided event listener to be executed when the specific custom event is fired by the same implementation of the event bus and passes through the specified event target.

When the specified event is fired, the event listener will be executed with the event passed as the first argument.

The order in which the event listeners will be executed is unspecified and should not be relied upon.

Parameters​

eventTarget​

EventTarget

The event target at which the listener should listen for the specified event.

eventName​

string

The name of the event to listen for.

listener​

EventBusListener

The event listener to register.

Returns​

EventBusImpl

This event bus.

Overrides​

EventBus.listen


listenAll()​

listenAll(eventTarget, listener): this

Defined in: packages/core/src/event/EventBusImpl.ts:99

Registers the provided event listener to be executed when any custom event is fired using the same implementation of the event bus and passes through the specified event target.

When the specified event is fired, the event listener will be executed with the event passed as the first argument.

The order in which the event listeners will be executed is unspecified and should not be relied upon.

Parameters​

eventTarget​

EventTarget

The event target at which the listener should listen for all event bus events.

listener​

EventBusListener

The event listener to register.

Returns​

this

This event bus.

Overrides​

EventBus.listenAll


unlisten()​

unlisten(eventTarget, eventName, listener): EventBusImpl

Defined in: packages/core/src/event/EventBusImpl.ts:222

Removes the provided event listener from the set of event listeners executed when the specified custom event fired by the same implementation passes through the specified event target.

The method has no effect if the listener is not registered for the specified event at the specified event target.

Parameters​

eventTarget​

EventTarget

The event target at which the listener is listening for the event.

eventName​

string

The name of the event listened for.

listener​

EventBusListener

The event listener to deregister.

Returns​

EventBusImpl

This event bus.

Overrides​

EventBus.unlisten


unlistenAll()​

unlistenAll(eventTarget, listener): EventBusImpl

Defined in: packages/core/src/event/EventBusImpl.ts:181

Removes the provided event listener from the set of event listeners executed when the any custom event fired by the same implementation passes through the specified event target.

The method has no effect if the listener is not registered at the specified event target.

Parameters​

eventTarget​

EventTarget

The event target at which the event listener listens for events.

listener​

EventBusListener

The event listener to deregister.

Returns​

EventBusImpl

This event bus.

Overrides​

EventBus.unlistenAll