Got this call:
setPou2({ ...pou2, imgId: po?.imgId2 }, () => {})
and it raise an error:
Expected 1 arguments, but got 2.
CodePudding user response:
It's due to you are passing 2nd argument of call. setPou2({...pou2, imgId:po?.imgId2})
this will not raise any error.
If you want callback function after change in state you need to use useEffect
by passing that particular state
as array.
useEffect(()=>{
// function you want to run
},[pou2])
or you can check this useStateWithCallback
CodePudding user response:
In react functional components you can only pass 1 argument to the setState
function. You can use instead a react useEffect
hook to achieve that:
useEffect(() => {
// the logic here will be executed each time after pou2 state has changed
}, [pou2]);