UNPKG

@freakycoder/react-use-state-with-callback

Version:

Make the useState hook with a callback for React and React Native

22 lines 828 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = require("react"); function useStateWithCallback(initialState) { const [state, _setState] = (0, react_1.useState)(initialState); const callbackRef = (0, react_1.useRef)(); const isFirstCallbackCall = (0, react_1.useRef)(true); const setState = (0, react_1.useCallback)((setStateAction, callback) => { callbackRef.current = callback; _setState(setStateAction); }, []); (0, react_1.useEffect)(() => { if (isFirstCallbackCall.current) { isFirstCallbackCall.current = false; return; } callbackRef.current?.(state); }, [state]); return [state, setState]; } exports.default = useStateWithCallback; //# sourceMappingURL=useStateWithCallback.js.map