Javascript 设置数组状态时出现问题,丢失第一个位置
我有一个通过道具接收阵列的函数。我需要以组件状态保存此数组,因此我的组件如下所示:Javascript 设置数组状态时出现问题,丢失第一个位置,javascript,reactjs,Javascript,Reactjs,我有一个通过道具接收阵列的函数。我需要以组件状态保存此数组,因此我的组件如下所示: ... const [mediaIds, setMediaIds] = useState(); ... function mediaChange (mediaArray){ console.log(mediaArray); setMediaIds(mediaArray); console.log(mediaIds); } 在第一个console.log中,我打印通过道具到达的数组,在第
...
const [mediaIds, setMediaIds] = useState();
...
function mediaChange (mediaArray){
console.log(mediaArray);
setMediaIds(mediaArray);
console.log(mediaIds);
}
在第一个console.log中,我打印通过道具到达的数组,在第二个中,我打印已经更改的状态
问题是它似乎跳过了数组的第一个位置,下面我将显示我的console.log。第一个是mediaArray,第二个是MediaID:
[2, 3]
[2]
[2, 3, 7]
[2, 3]
[2, 3, 7, 4]
[2, 3, 7]
[2, 3, 7, 4, 6]
[2, 3, 7, 4]
[2, 3, 7, 4, 6, 5]
[2, 3, 7, 4, 6]
[2, 3, 7, 4, 6, 5, 1]
[2, 3, 7, 4, 6, 5]
[2, 3, 7, 4, 6, 5, 1, 8]
[2, 3, 7, 4, 6, 5, 1]
由于许多原因,
useState
不同步。如果要在分配新值后执行某些操作,请使用useffect
功能
请阅读以下内容:
useState
由于许多原因不同步。如果要在分配新值后执行某些操作,请使用useffect
功能
阅读以下内容:您能否提供复制此问题的最小存储库?您能否提供复制此问题的最小存储库?