SDKsReact Native
加载历史消息
OpenIM React Native SDK 加载历史消息。
分页加载指定会话中较早的历史消息。首次拉取首页历史时,startClientMsgID 传入空字符串;后续向上滑动加载更多较早消息时,传入当前已展示列表中最早一条消息的 clientMsgID。
const page = await OpenIMSDK.getAdvancedHistoryMessageList({
conversationID,
startClientMsgID: oldestMessage?.clientMsgID ?? '',
count: 30,
viewType: ViewType.History,
});参数说明
| 参数 | 类型 | 必填 | 含义 |
|---|---|---|---|
conversationID | string | 是 | 要读取历史消息的会话 ID。 |
startClientMsgID | string | 是 | 分页锚点消息 ID;首页拉取时传入空字符串 ""。 |
count | number | 是 | 本次拉取的消息数量上限。 |
viewType | ViewType | 是 | 场景类型,浏览普通聊天历史传入 ViewType.History。 |
返回结果
调用成功后返回 AdvancedGetMessageResult 对象:
| 字段 | 类型 | 含义 |
|---|---|---|
messageList | MessageItem[] | 当前页获取到的历史消息列表,按时间先后顺序排列。 |
isEnd | boolean | 是否已拉取到该会话历史记录的最早起点;为 true 表示没有更早的历史消息了。 |
errCode | number | 本次历史读取的状态码。 |
errMsg | string | 与 errCode 对应的状态说明。 |
客户端将拉取到的 messageList 合并入本地会话消息列表时,应以 clientMsgID 为合并标识进行去重,防止网络重试或异步回调引起重复展示。
这个页面有帮助吗?