dom-event-utils
Very small library that makes working with DOM event emitters API a little easier to work with. These are all common utilities that I find myself reaching for, regardless of the framework I'm in.
Methods
eventToPromise
- convert an event to a promise that resolves once it's called.
For example:
import { eventToPromise } from 'dom-event-utils';
function createPopup() {
const popup = window.open('/my-popup');
return eventToPromise(popup, 'load', () => {
return popup;
}, 10000);
}
on
- just like addEventListener
, but returns an unsubscribe function.
import { on } from 'dom-event-utils';
const off = on(document.querySelector('.btn'), 'click', () => { });
off();
once
- only called once and then unsubscribed from the event source
import { once } from 'event-utils';
once(document, 'DOMContentLoaded', () => {
});