浏览 SDKs · React Native
平台
SDKsReact Native商业版

批量删除消息

OpenIM React Native SDK 批量删除消息。

复制

批量删除指定会话中的多条消息。

await OpenIMSDK.deleteMessages({
  conversationID,
  clientMsgIDs,
  isSync: true,
});

参数说明

参数类型必填含义
conversationIDstring是要删除消息所属的会话 ID。
clientMsgIDsstring[]是要删除的消息客户端 ID 列表;所有消息必须属于同一会话。
isSyncboolean是是否将删除操作同步至会话对方。为 true 时,双方均会删除对应消息;为 false 时,仅对当前账号生效。

返回结果

调用完成后,消息删除请求已处理完成。

isSync 设为 true 时,删除操作会同步给会话另一方;为 false 时,仅当前账号删除。无论该值如何设定,当前账号的操作都会自动同步到该账号的其他已登录设备。

监听消息删除

消息删除后会触发 OnMsgDeleted 事件,事件直接携带被删除的 MessageItem。客户端应以 clientMsgID 为合并标识从当前会话列表中移除对应消息。

const handleMessageDeleted = (message: MessageItem) => {
  // 根据 message.clientMsgID 从当前会话列表中移除对应消息
};

// 设置监听
OpenIMSDK.on(OpenIMEvent.OnMsgDeleted, handleMessageDeleted);

// 取消监听
OpenIMSDK.off(OpenIMEvent.OnMsgDeleted, handleMessageDeleted);

组件销毁、退出登录或切换账号时,取消该监听。