UNPKG

@cran/vue.use

Version:

Cranberry Vue Use Utilities

15 lines (14 loc) 482 B
import { useLifecycle } from "./useLifecycle"; import { unref, watch } from "@vue/runtime-dom"; export function useLifecycleWatch(target, handler, options) { const unwrap = target instanceof Function ? target : function doUnwrap() { return unref(target); }; watch(unwrap, handler, options); return useLifecycle(function onActive() { handler(unwrap(), undefined); }, function onInactive() { handler(undefined, unwrap()); }); }