React Native FlatList OnEndReached запускается дважды - PullRequest
0 голосов
/ 21 апреля 2020

У меня проблема с 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}
      />
    );
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...