Я использую Flatlist с React Native для Android, где мне нужно динамически загружать новые данные при достижении конца Flatlist как в «Вверх», так и «Вниз» в положении «Плоский список» (или «Влево» и «Вправо» в горизонтальном представлении) .
Однако Flatlist имеет только встроенную функцию для выполнения чего-либо в onEndReached в положении «Вниз» (или «Вправо» в горизонтальном положении).
Вы можете обойти проблему с обнаружением прокрутки пользователем влево или вправо, но когда я добавляю новые данные в состояние «Вверх», чтобы они помещались в начало массива, Flatlist прослушивается и не прокручивается, как если бы вы добавить новые данные в конец массива.
Несмотря на то, что он загружает новые данные в массив, представление сбивается и не прокручивается.
Теперь я просто отправляю данные в начало массива следующим образом:
this.setState({
data: [
...newData,
...this.state.data
]
})
TLDR: есть ли способ добавить новые данные в массив в состоянии в начало массива, чтобы прокрутка была естественной, а представление не зависало из-за изменения положения в состоянии / индексе?