UNPKG

@cran/vue.use

Version:

Cranberry Vue Use Utilities

27 lines (26 loc) 872 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useLifecycle = void 0; const runtime_dom_1 = require("@vue/runtime-dom"); const lifecycle_1 = require("../utility/lifecycle"); function useLifecycle(onActive, onInactive) { const active = (0, runtime_dom_1.ref)(false); function doOnActive() { if (!(0, runtime_dom_1.unref)(active)) { onActive(); active.value = true; } } function doOnInctive() { if ((0, runtime_dom_1.unref)(active)) { onInactive(); active.value = false; } } (0, lifecycle_1.tryOnMounted)(doOnActive); (0, lifecycle_1.tryOnDeactivated)(doOnInctive); (0, lifecycle_1.tryOnActivated)(doOnActive); (0, lifecycle_1.tryOnUnmounted)(doOnInctive); return { active, }; } exports.useLifecycle = useLifecycle;