UNPKG

vue-nonreactivity-decorator

Version:

Non reactivity property decorator for vue-class-component

30 lines (29 loc) 909 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const NON_REACTIVITY = new WeakMap; function ensureMap(component) { if (!NON_REACTIVITY.has(component)) { NON_REACTIVITY.set(component, new Map); } return NON_REACTIVITY.get(component); } function setNonReactivity(component, key, value) { ensureMap(component).set(key, value); } function getNonReactivity(component, key) { return ensureMap(component).get(key); } function NonReactivity(value) { return function (target, property) { setNonReactivity(target, property, value); Object.defineProperty(target, property, { get() { return getNonReactivity(target, property); }, set(v) { setNonReactivity(target, property, v); } }); }; } exports.default = NonReactivity;