引用回复
IMKit 支持引用回复功能,允许用户在聊天页面中回复彼此的消息。消息将出现在会话页面的消息列表组件中。引用回复功能默认发送的消息包含引用消息内容对象 ReferenceMessage
(类型标识:RC:ReferenceMsg
)。


局限
引用回复功能目前有以下限制:
- 仅支持文本消息、文件消息、图文消息、图片消息、引用消息的引用。
- 引用深度仅支持一度,即只能引用回复原始消息。如果多重引用,只展示上一层被引消息内容。
用法
IMKit 会话页面默认已启用引用回复功能。用户在会话页面长按消息,在弹框里选择引用消息,即可引用该消息。在输入区添加消息内容后,SDK 默认会将输入内容与被引消息组合为 ReferenceMessage
,并发送到会话中。
关闭引用回复功能
IMKit 目前不支持关闭引用回复功能。
自定义引用消息的 UI
引用回复功能默认发送的消息包含引用消息内容(RC:ReferenceMsg
),引用消息使用 ReferenceMessageItemProvider
模板展示在消息列表中。
如果需要调整内置消息样式,需继承 BaseMessageItemProvider<ReferenceMessage>
自行实现消息展示模板类,详见自定义Provider。
调用下面的接口将该自定义模板提供给 SDK,objectName
传 ReferenceMessageObjectName
。
import { ReferenceMessageObjectName, RongIM } from "@rongcloud/imkit";
// 注册自定义引用消息 provider 给 IMKit
RongIM.getInstance().conversationService().addMessageItemProvider(ReferenceMessageObjectName, new CustomReferenceMessageItemProvider())