假设我在一个数组中有15个对象。我在浏览器上只显示了其中的5个。
const array1 = Array.slice(0,4)
此外,我有一个函数,当用户向下滚动时会调用它。我想在每个卷轴上再展示5个。
array1.concat(Array.slice(5,9))
但是,阵列中仍保留有其他对象。Array.slice(10, ~)
我怎么能重复这个?
我正在使用React和React无限滚动组件
这个例子可能有助于你理解我的问题。唯一的区别是这个例子从0创建数组,而我在一个数组中已经有15个对象了。
您可以跟踪使用变量的位置,例如以开头
let start = 0;
然后,当你想显示下五个:
if (start < originalArray.length) {
let end = Math.min(start + 5, originalArray.length) {
if (end > start) {
array1 = array1.concat(originalArray.slice(start, end));
// Presumably a `setState` call here using `array1`
start = end;
}
}
}