@ohu-mobile/core
Version:
27 lines (26 loc) • 689 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
function _default(instance, event, handler) {
var registered = false;
var listener = function listener() {
handler();
};
var register = function register() {
window.addEventListener(event, listener);
registered = true;
};
var unregister = function unregister() {
window.removeEventListener(event, listener);
registered = false;
};
register();
instance.$once('hook:beforeDestroy', unregister);
instance.$once('hook:activated', function () {
if (registered) return;
register();
});
instance.$once('hook:deactivated', unregister);
}