使用 Hooks 在 React onclick 中循环遍历数组
2020-06-03
1114
我有一个从
json
文件加载的对象,我希望每个项目在单击按钮时分别加载。我完成了这一点,但是主要问题是索引超出范围时,它显示
421632587
我如何制作,然后索引为
0
再次当索引到达最后一项时?我尝试通过在按钮中包含一些语句来解决它,但没有运气。
这是迄今为止代码的相关部分:
529866883
2个回答
您当前方法的问题是最高有效索引是
questions_size - 1
,它应该像这样工作:
onClick={() => num < questions_size - 1 ? setNum(num + 1) : setNum(0)}
另一个选项是使用余数运算符:
onClick={() => setNum(num + 1 % questions_size)}
Paduado
2020-06-03
此代码仅当数据发生变化时才会运行。
useEffect(() => {
if (num > Data.length) {
setNum(0)
}
},[Data])
Asad Umar
2020-06-03