SDKsWASM
更新当前用户资料
更新当前登录用户的昵称、头像和扩展资料。
setSelfInfo() 更新当前登录用户的基础展示资料。只传本次需要更新的 nickname、faceURL 或 ex。
参数说明
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
nickname | string | 否 | 新昵称。 |
faceURL | string | 否 | 新头像地址。 |
ex | string | 否 | 新扩展字符串,会完整覆盖旧值。 |
至少传入一个实际要更新的资料字段。
await openimsdk.setSelfInfo({
nickname: nickname.trim(),
faceURL,
ex: mergedExtra,
});ex 是完整字符串,SDK 不会自动合并 JSON;多个业务模块共用时,应先读取当前值并合并各自的命名空间。
setSelfInfo() 还承载账号级策略字段,但这些字段不应和普通资料一起保存:消息接收方式见设置全局消息接收方式,加好友权限见设置加好友权限。
Promise 成功表示设置请求完成,不等同于资料事件已经到达。最终资料通过 OnSelfInfoUpdated 或 getSelfUserInfo() 校准。
监听当前用户资料变化
本页是 OnSelfInfoUpdated 的完整监听归属页。事件携带更新后的 SelfUserInfo,应直接替换当前用户快照。
import { SdkEvent } from '@openim/wasm-client-sdk';
const handleSelfInfoUpdated = ({ data }) => setCurrentUser(data);
openimsdk.on(SdkEvent.OnSelfInfoUpdated, handleSelfInfoUpdated);
function removeProfileListener() {
openimsdk.off(SdkEvent.OnSelfInfoUpdated, handleSelfInfoUpdated);
}退出登录、切换账号或销毁用户状态层时调用 removeProfileListener()。
这个页面有帮助吗?