UNPKG

vue-hooks-plus

Version:
21 lines (20 loc) 871 B
"use strict"; const vue = require("vue"); const isEqual = require("lodash-es/isEqual"); const useEffectWithTarget = require("./useEffectWithTarget"); const _interopDefaultLegacy = (e) => e && typeof e === "object" && "default" in e ? e : { default: e }; const isEqual__default = /* @__PURE__ */ _interopDefaultLegacy(isEqual); const useEffectWithTarget__default = /* @__PURE__ */ _interopDefaultLegacy(useEffectWithTarget); const depsEqual = (aDeps, bDeps = []) => { return isEqual__default.default(aDeps, bDeps); }; const useDeepCompareEffectWithTarget = (effect, deps, target) => { const targetRef = vue.ref(); const signalRef = vue.ref(0); if (!depsEqual(deps, targetRef.value)) { targetRef.value = deps; signalRef.value += 1; } useEffectWithTarget__default.default(effect, [signalRef], target); }; module.exports = useDeepCompareEffectWithTarget;