Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何动态更新数组中的一个元素_Reactjs - Fatal编程技术网

Reactjs 如何动态更新数组中的一个元素

Reactjs 如何动态更新数组中的一个元素,reactjs,Reactjs,我的组件中有一个状态,如 const [game,setGame] = useState([0,0,0,0,0,0,0,0,0]); 当我试图更新它时,我无法做到这一点。 我正在努力 setGame([...game,{clickedBox:'red'}]) 我正在clickedBox中获取索引,useState中的设置将替换它所保存的全部数据。 首先从外部更新阵列,然后将其设置回您的状态 let arr = [...game]; arr[index] = { /* your changes

我的组件中有一个状态,如

const [game,setGame] = useState([0,0,0,0,0,0,0,0,0]);
当我试图更新它时,我无法做到这一点。 我正在努力

setGame([...game,{clickedBox:'red'}])

我正在clickedBox中获取索引,useState中的设置将替换它所保存的全部数据。 首先从外部更新阵列,然后将其设置回您的状态

let arr = [...game];
arr[index] = { /* your changes */ };
setGame([...arr)];

预期输出?假设clickedBox中有1个值,那么游戏数组将类似于[0,'red',0,0,0,0,0,0],这不是解构的工作方式。