浏览 SDKs · React Native
平台
SDKsReact Native

更新输入状态

OpenIM React Native SDK 更新输入状态。

复制

更新当前账号在会话中的输入状态。开始输入时传 focus: true,发送消息、输入框失焦或离开会话时传 false。

await OpenIMSDK.changeInputStates({
  conversationID,
  focus: true,
});

参数说明

参数类型必填含义
conversationIDstring是要更新输入状态的会话 ID。
focusboolean是true 表示正在输入,false 表示停止输入。

避免在每个按键事件中频繁重复上报相同状态,建议设置防抖。

返回结果

调用完成后,输入状态上报已生效。

输入状态变化会触发 OnInputStatusChanged 事件通知会话对方。客户端应以 conversationID 定位当前会话,并以 userID 显示或隐藏“对方正在输入...”提示。

const handleInputStatusChanged = (inputStatus) => {
  // 根据 inputStatus.conversationID 和 inputStatus.userID 更新界面输入状态
};

// 设置监听
OpenIMSDK.on(OpenIMEvent.OnInputStatusChanged, handleInputStatusChanged);

// 取消监听
OpenIMSDK.off(OpenIMEvent.OnInputStatusChanged, handleInputStatusChanged);

组件销毁、离开会话或切换账号时,取消该监听。