У меня проблема с FlatList в реагировать нативно, когда я вызываю функцию на onEndReached, функция запускается дважды. Я буду очень благодарен, если кто-то скажет мне, что я делаю неправильно. Заранее спасибо! вот часть моего кода:
class App extends react.Component {
constructor(props) {
super(props);
this.state = {
products: [],
page: 1,
loading: true,
loadingMore: false,
};
}
getProducts = async (page = this.state.page) => {
try {
await kiki
.get(productsURLS, {
params: {
page: page,
},
})
.then((response) => {
this.setState({
products: response.data,
loading: false,
loadingMore: false,
});
});
} catch (err) {
console.log(err);
}
};
handleLoadMore = () => {
const { loadingMore } = this.state;
if (loadingMore === false) {
this.setState(
{
page: this.state.page + 1,
},
() => {
this.getProducts;
}
);
}
};
render() {
return (
<FlatList
data={data}
renderItem={this.renderItem}
numColumns={2}
keyExtractor={(item) => item.id}
onEndReached={this.handleLoadMore}
onEndReachedThreshold={0.1}
/>
);
}
}