UNPKG

@u3u/vue-hooks

Version:
24 lines (23 loc) 874 B
/* eslint no-return-assign: off */ import { ref } from '@vue/composition-api'; export default function useCounter(initialValue) { if (initialValue === void 0) { initialValue = 0; } var count = 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]; }