@fe6/water-pro
Version:
An enterprise-class UI design language and Vue-based implementation
23 lines (21 loc) • 586 B
JavaScript
import supportsPassive from '../../_util/supportsPassive';
export default function addEventListenerWrap(target, eventType, cb, option) {
if (target.addEventListener) {
let opt = option;
if (
opt === undefined &&
supportsPassive &&
(eventType === 'touchstart' || eventType === 'touchmove' || eventType === 'wheel')
) {
opt = { passive: false };
}
target.addEventListener(eventType, cb, opt);
}
return {
remove: () => {
if (target.removeEventListener) {
target.removeEventListener(eventType, cb);
}
},
};
}