0

ここに画像の説明を入力

このエラーが発生すると、同じメッセージ データがチャット リストに追加され、クラッシュします。

react-native-gifted-chat を使用してチャット アプリケーションを作成しようとしています。ユーザーから 15,000 件を超えるメッセージを期待していますが、gifted-chat は 1000 件のメッセージを処理することさえできません。このエラーが発生します。

ソケット経由でmongodbからデータを取得します。

本当に良いパフォーマンスでメッセージ データをレンダリングする方法はありますか? 私はそれについて多くのことを研究しました.PureComponentなど.何も機能しません:/

4

1 に答える 1

1

目標を達成したい場合は、メッセージをレンダリングするコンポーネントを反応ネイティブのFlatListに置き換える必要があると思います。そして、initialNumToRender を 10 ~ 15 のような小さな数値に設定します。私は同様のチャットアプリでこの方法を使用しましたが、gifted-chat (ゼロから作成したもの) では使用しませんでした。

これがメッセージをレンダリングする私の方法であり、いくつのメッセージでも問題はありませんでした:

<FlatList
    inverted
    windowSize={5}
    removeClippedSubviews={true}
    initialNumToRender={15}
    data={this.props.messages}
    ref={ref => this.flatList = ref}
    onLayout={this.onLayout}
    renderItem={this.renderItem}
    keyExtractor={(item) => `${item.message_id}`}
/>
于 2020-05-15T20:32:15.140 に答える