Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Simplify multiple instances of useState

In my ReactJS code, I need to store multiple variables as separate states like this. Is there any easier way to create them? Because now I use useState function repeatedly.

  const [dutyCode, setDutyCode] = useState("");
  const [startTime, handleStartTime] = useState(new Date());
  const [endTime, handleEndTime] = useState(new Date());
  const [activityType, setActivityType] = useState("");
  const [dutyType, setDutyType] = useState("");
like image 512
Bahadır Korumaz Avatar asked Oct 24 '25 05:10

Bahadır Korumaz


1 Answers

You can just use one state object and destructure it:

const [state, setState] = useState({
    dutyCode: "",
    startTime: new Date(),
    endTime: new Date(),
    activityType: "",
    dutyType: "",
});

const {
    dutyCode,
    startTime,
    endTime,
    activityType,
    dutyType,
} = state;

const updateState = (update) => setState({ ...state, ...update });

like image 156
TVG Avatar answered Oct 26 '25 18:10

TVG