@lesnoypudge/utils-react
Version:
lesnoypudge's utils-react
17 lines (16 loc) • 579 B
JavaScript
import { useFunction } from "../useFunction/useFunction.js";
import { isCallable } from "@lesnoypudge/utils";
import { useRef } from "react";
const useRefInjection = (initialState, setStateForInjection) => {
const stateRef = useRef(initialState);
const setStateWithInjection = useFunction((newState) => {
const value = isCallable(newState) ? newState(stateRef.current) : newState;
setStateForInjection(value);
stateRef.current = value;
});
return [stateRef, setStateWithInjection];
};
export {
useRefInjection
};
//# sourceMappingURL=useRefInjection.js.map