Javascript 如何使用React为数组中的单个项提供其自己的唯一状态?

Javascript 如何使用React为数组中的单个项提供其自己的唯一状态?,javascript,reactjs,react-native,react-redux,react-hooks,Javascript,Reactjs,React Native,React Redux,React Hooks,我正在学习fullstackopen,我正在练习1.13。我正在努力理解如何实现一种方法来更新数组中单个项的状态[轶事] 每一件轶事都被允许进行多次投票 我可以增加选票,但它可以增加所有人的选票 下面的代码是它们提供的实现提示,以及一些关于使用arr.fill()的提示 const points=[1,4,6,3] 常量副本=[…点] //将位置2的值增加1 复制[2]+=1确定,因此问题是您用0初始化状态(投票)。相反,您应该使用一个零数组来初始化它 //票数[i]表示第i条轶事的票数 c

我正在学习fullstackopen,我正在练习1.13。我正在努力理解如何实现一种方法来更新数组中单个项的状态[轶事]

每一件轶事都被允许进行多次投票

我可以增加选票,但它可以增加所有人的选票

下面的代码是它们提供的实现提示,以及一些关于使用arr.fill()的提示

const points=[1,4,6,3]
常量副本=[…点]
//将位置2的值增加1

复制[2]+=1
确定,因此问题是您用0初始化状态(投票)。相反,您应该使用一个零数组来初始化它

//票数[i]表示第i条轶事的票数
const[voces,setvoces]=useState([0,0,0,0,0])
现在,当您处理投票时:

const handleVotes=()=>{
//你把选票复印一份
const votesCopy=[…投票]
//然后增加对所选轶事的投票
VoteCopy[所选]+=1;
//最后更新状态
设置投票(VoteScope);
}

将数据保留为数组是可以的。在增加选票时,你可能做错了什么。因此,除非你向我们展示这一部分,否则很难告诉你出了什么问题。好吧,我刚刚用我的代码更新了帖子。那么我是否需要将const[voces,setvoces]更改为useState([])?