@re-flex/ui
Version:
Re-Flex ui library
16 lines (15 loc) • 482 B
JavaScript
import { useCallback, useState } from "react";
const useSetState = (initialState = {}) => {
const [state, set] = useState(initialState);
const setState = useCallback((patch) => {
set((prevState) => {
const newState = patch instanceof Function ? patch(prevState) : patch;
return {
...prevState,
...newState,
};
});
}, [set]);
return [state, setState];
};
export default useSetState;