UNPKG

@aplus-frontend/antdv

Version:

Vue basic component library maintained based on ant-design-vue

18 lines (17 loc) 508 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = useSyncState; var _vue = require("vue"); function useSyncState(defaultState, onChange) { const stateRef = (0, _vue.ref)(defaultState); function setState(updater) { const newValue = typeof updater === 'function' ? updater(stateRef.value) : updater; if (newValue !== stateRef.value) { onChange(newValue, stateRef.value); } stateRef.value = newValue; } return [stateRef, setState]; }