DEV Community

Discussion on: I created the simplest implementation of an infinite paging FlatList using Hooks in ReactNative.

Collapse
 
milansusnjar_ profile image
Milan Šušnjar

const lastIndex = data.length
const lastItem = data.length ? data[lastIndex] : null

If your data has 2 objects, lastIndex = 2
lastItem = data[2] but you only have 0 and 1.

Last index should be data.length - 1

Collapse
 
technoplato profile image
Michael Lustig - halfjew22@gmail.com

You’re absolutely right, except for the length == 0 case. So shouldn’t it be data.length ? data.length - 1 : 0?

Collapse
 
milansusnjar_ profile image
Milan Šušnjar

Like this, I guess.
const lastIndex = data.length - 1
const lastItem = data.length ? data[lastIndex] : null

Thread Thread
 
technoplato profile image
Michael Lustig - halfjew22@gmail.com

It depends on what we’d want to pass to the load method in the case of an empty result set. I think your way works great.

Bigger question though: can you imagine a way to make this more customizable to use any load function in a plug and play manner?