@preact-hooks/event
Version:
A custom Preact Hook that provides a declarative useEventListener.
2 lines (1 loc) • 505 B
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("preact/hooks")):"function"==typeof define&&define.amd?define(["preact/hooks"],t):(e=e||self).useEventListener=t(e.preactHooks)}(this,(function(e){return function(t,n,r){void 0===r&&(r=window);var o=e.useRef(null);e.useEffect(()=>{o.current=n},[n,o.current]),e.useEffect(()=>{if(r&&r.addEventListener){var e=e=>o.current(e);return r.addEventListener(t,e),()=>{r.removeEventListener(t,e)}}},[t,r,o.current])}}));