@rozhkov/react-useful-hooks
Version:
Useful hooks for React application
15 lines (14 loc) • 579 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = require("react");
const default_values_1 = require("default-values");
function useStateRef(initialState) {
const [state, setState] = (0, react_1.useState)(initialState);
const ref = (0, react_1.useRef)(state);
const dispatch = (0, react_1.useCallback)((val) => {
ref.current = typeof val === 'function' ? val(ref.current) : val;
setState(ref.current);
}, default_values_1.EMPTY_ARRAY);
return [state, dispatch, ref];
}
exports.default = useStateRef;
;