Не удается выполнить обновление состояния реакции для размонтированного компонента с помощью простой карты в плоском списке

#reactjs #react-native

#reactjs #react-native

Вопрос:

Я начинаю с react native, поэтому извините, если мой вопрос глупый.

У меня есть простой FlatList, прокручиваемый, определяемый onEndReached и onEndReachedThreshold .

  <FlatList data={this.state.dataTest}
            keyExtractor={(item, index) => index.toString()}
            renderItem={({item}) => <FilmItems film={item}/>}
            onEndReachedThreshold={0.1}
            onEndReached={(e) => {
               if (e.distanceFromEnd < 0) return;
                   this._loadData()
                }}    
  /> 
  

Метод MyLoadData
Простой вызов api с

 _loadDataTest() {
    this.setState({ isLoading: true })
    if (this.searchedText.length > 0 amp;amp; this.page <= this.totalPages) {
      getDataCallAPiTest(this.searchedText, this.page 1).then( data => {
        console.log('data', data )
          this.page = data.page
          this.totalPages = data.total_pages
          this.setState({
            dataTest: this.state.dataTest.concat(data.results),
            isLoading: false
          })
      })
    }
  }
  

Если я прокручиваю 5 раз, чтобы вызвать api 5, у меня возникает ошибка

 Warning: Can't perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your application. To fix, cancel all subscriptions and asynchronous tasks in a useEffect cleanup function.
  

У меня эта ошибка, если мой список содержит более 80 объектов
Фрагмент карты

 adult: false
backdrop_path: "/4GlSMUpzSd3cliYGFJVziSDX53S.jpg"
genre_ids: (2) [12, 14]
id: 671
original_language: "en"
original_title: "Harry Potter and the Philosopher's Stone"
overview: "Orphelin, Harry Potter a été recueilli en bas âge par sa tante Pétunia et son oncle Vernon, deux abominables créatures qui, depuis dix ans, prennent un malin plaisir à l’humilier, le houspiller et le malmemer. Contraint de se nourrir de restes et de dormir dans un placard infesté d’araignées, le malheureux est en butte à l’hostilité de son cousin Dudley, obèse imbécile qui ne manque pas une occasion de le rouer de coups. L’année de ses 11 ans, Harry ne s’attend pas à recevoir de cadeaux, pourtant cette année là, une lettre mystérieuse va lui parvenir qui va changer son existence..."
popularity: 135.056
poster_path: "/fbxQ44VRdM2PVzHSNajUseUteem.jpg"
release_date: "2001-11-16"
title: "Harry Potter à l'école des sorciers"
video: false
vote_average: 7.9
vote_count: 18622
  

Я не знаю почему, так что вы можете мне помочь.
Спасибо

Комментарии:

1.Не могли бы вы попробовать создать запущенный Expo snack, который воспроизводит эту проблему?

2. @DrewReese Я воспроизвожу в стеке expo да

3. Если у вас все еще есть закуска Expo, которая воспроизводит проблему, можете ли вы обновить свой вопрос, чтобы включить ссылку на него?