Hallo,
ich versuche zur Zeit ein infinite scroll in mein React Native Projekt zu implementieren.
Anbei mein Code:
API aufrufen (mit useEffect Hook)
Meine Flatlist
LoadMore Function
Und die useState
Prinzipiell funktioniert es auch. Das Problem ist nur, dass sich die page Variable komisch verhält. Im console log sehe ich, dass sie manchmal direkt 2 mal aufgerufen wird. Also sie geht von 1 direkt auf 2 und 3. Manchmal wird aber auch direkt beim ersten Zugriff 1 und 2 geladen.
Jemand eine Idee woran das liegen könnte?
Vielen Dank
ich versuche zur Zeit ein infinite scroll in mein React Native Projekt zu implementieren.
Anbei mein Code:
API aufrufen (mit useEffect Hook)
Code:
useEffect(() => {
const loadProducts = async () => {
let response = await fetch(
`https://jsonplaceholder.typicode.com/posts?_page=${page}&_limit=10`
);
let results = await response.json();
//console.log(results);
if (results) {
setProducts([...products, ...results]);
}
};
loadProducts();
}, [page]);
Meine Flatlist
Code:
<FlatList
data={products}
keyExtractor={(item, index) => item.id}
renderItem={renderGridItem}
onEndReached={loadMore}
onEndReachedThreshold={0}
/>
LoadMore Function
Code:
loadMore = () => {
setPage(page + 1);
console.log(page);
};
Und die useState
Code:
const [products, setProducts] = useState([]);
const [page, setPage] = useState(1);
Prinzipiell funktioniert es auch. Das Problem ist nur, dass sich die page Variable komisch verhält. Im console log sehe ich, dass sie manchmal direkt 2 mal aufgerufen wird. Also sie geht von 1 direkt auf 2 und 3. Manchmal wird aber auch direkt beim ersten Zugriff 1 und 2 geladen.
Jemand eine Idee woran das liegen könnte?
Vielen Dank