>我有一个包含 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])