UNPKG

@hanxx/vue-hooks

Version:
27 lines (26 loc) 997 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /* eslint no-return-assign: off */ var composition_api_1 = require("@vue/composition-api"); function useCounter(initialValue) { if (initialValue === void 0) { initialValue = 0; } var count = composition_api_1.ref(initialValue); var inc = function (delta) { if (delta === void 0) { delta = 1; } return (count.value += delta); }; var dec = function (delta) { if (delta === void 0) { delta = 1; } return (count.value -= delta); }; var get = function () { return count.value; }; var set = function (val) { return (count.value = val); }; var reset = function (val) { if (val === void 0) { val = initialValue; } initialValue = val; // eslint-disable-line no-param-reassign return set(val); }; var actions = { inc: inc, dec: dec, get: get, set: set, reset: reset }; return [count, actions]; } exports.default = useCounter;