Как загрузить больше сообщений с помощью response-native-gifted-chat, прокручивая их вверх? - PullRequest
1 голос
/ 07 марта 2019

Я хочу загружать больше сообщений при прокрутке вверх.Есть опора onLoadEarlier, которую я передал здесь, чтобы загрузить больше сообщений, но она не работает.эта функция действительно вызывается при открытии чата, но я хочу выполнить функцию при прокрутке вверх.

1 Ответ

0 голосов
/ 21 июля 2019

Вы можете использовать scrollEventThrottle и onScroll реквизиты в listViewProps для вызова обратного вызова при достижении вершины прокрутки в GiftedChat . У меня отлично работает.

<GiftedChat
          messages={this.state.messages}
          listViewProps={{
            scrollEventThrottle: 400,
            onScroll: ({ nativeEvent }) => {
              if (this.isCloseToTop(nativeEvent)) {
                this.setState({refreshing: true});
                this.loadMoreChat();
              }
            }
          }}
          onSend={messages => this.onSend(messages)}
          user={{
            _id: 2,
          }}
        />

isCloseToTop({ layoutMeasurement, contentOffset, contentSize }) {
    const paddingToTop = 80;
    return contentSize.height - layoutMeasurement.height - paddingToTop <= contentOffset.y;
  }

Ссылка на код взята с здесь .

...