当useEffect已经适用时,道具更改时加载useState

我正在尝试在更改道具时更新我的​​初始状态,但是即使使用useEffect也不起作用。这是我的以下代码: 从图片链接中,您可以看到初始状态已从(p4,p1,p3,p5)更新为(p4,p1,p3,p2),但是useEffect并未触发更改状态,因此状态保持在(p4,p1,p3,p2)。我不知道为什么,而且已经奋斗了几个小时,有人可以帮助我吗?

export default(props)=>{   
let toollist=props.getData;
const inistate={};
for (let index in toollist){
    let stkey=(toollist[index].ttype+toollist[index].toolid)
    inistate[stkey]=[0,0,120,120,false]
}
inistate.dragging=false
inistate.resize=false
console.log("ini:",inistate)
const [state,setstate]=useState(inistate)
useEffect(()=>{
    console.log("effected")
    setstate(inistate)},[inistate])
console.log("state:",state)

enter image description here