如何在循环中设置数组使用状态以在默认数组中添加更多项目?



>我有一个包含 10 个项目的数组 首先,我在使用状态中添加了 5 个项目

const [dataList, setDataList] = useState([])
useEffect(() => {
const newArr = []
for (var i = 0; i < 5 && i < data.length; i++) {
newArr.push(data[i])
}
setDataList(newArr)
}, [])

然后,当我添加剩余 5 个项目时,我没有得到期望的结果

onPress = () => {
const newArr2 = []
for (var i = 5; i < 10 && i < data.length; i++) {
newArr2.push(data[i])
}
setDataList([...dataList, newArr2])
console.log("dataList", dataList)
}

https://i.stack.imgur.com/lB0JD.png

如何将剩余的 5 个项目推入 useState 数组? 对不起,我的英语不好。

扩展语法的替代方法可能是:

setDataList(dataList.concat(newArr2))

您正在扩展当前数组,但不是新数组:

setDataList([...dataList, ...newArr2])

相关内容

  • 没有找到相关文章

最新更新