Skip to main content

@rtorcato/js-common / events

events

Functions​

on()​

on<K>(target, type, handler, options?): () => void

Defined in: events/index.ts:16

Adds an event listener and returns a function to remove it.

Example​

const off = on(button, 'click', (event) => console.log(event.clientX))
off() // listener removed

Type Parameters​

K​

K extends keyof HTMLElementEventMap

Parameters​

target​

EventTarget

The event target.

type​

K

The event type.

handler​

(event) => void

The event handler.

options?​

boolean | AddEventListenerOptions

Event listener options.

Returns​

Unsubscribe function.

() => void


emit()​

emit(target, type, detail?): boolean

Defined in: events/index.ts:41

Dispatches a custom event on the target.

Example​

on(window, 'click', () => {})
emit(window, 'cart:add', { sku: 'A1' }) // true (nothing called preventDefault)

Parameters​

target​

EventTarget

The event target.

type​

string

The event type.

detail?​

unknown

Optional detail data.

Returns​

boolean

True if not canceled.


onceEvent()​

onceEvent<K>(target, type): Promise<HTMLElementEventMap[K]>

Defined in: events/index.ts:61

Waits for a single event to occur and resolves a promise.

Named onceEvent rather than once so it cannot be confused with functions.once, which memoises a call rather than awaiting an event.

Example​

const event = await onceEvent(button, 'click')
event.type // 'click'

Type Parameters​

K​

K extends keyof HTMLElementEventMap

Parameters​

target​

EventTarget

The event target.

type​

K

The event type.

Returns​

Promise<HTMLElementEventMap[K]>

Resolves with the event object.


preventDefault()​

preventDefault(event): void

Defined in: events/index.ts:78

Prevents the default action for an event.

Parameters​

event​

Event

The event object.

Returns​

void


stopPropagation()​

stopPropagation(event): void

Defined in: events/index.ts:86

Stops propagation for an event.

Parameters​

event​

Event

The event object.

Returns​

void