组件门面/挂载入口(IMKitFacade)

组件门面/挂载入口:IMKitFacade 是 IDL 定义的跨端 UI 组件,props / events / behaviors 在各平台语义一致。本页给出契约属性、事件、渲染行为、数据源与 Native (C ABI) 端绑定/示例。

契约属性(props)​

属性类型必填说明
options{container:any, appkey:string, serverUrl?:string, locale?:string, theme?:Theme, renderers?:map<string,function>}是显示选项(置顶 / 未读 / 草稿 / @ 提及):{ container:any, appkey:string, serverUrl?:string, locale?:string, theme?:Theme, renderers?:map<string,function> }

事件​

事件参数说明
ready—宿主回调(参数见 IDL 事件定义)
errorerr宿主回调(参数见 IDL 事件定义)

渲染行为​

  • mount/update/destroy 生命周期幂等;同一容器重复 mount 复用实例;组件销毁释放监听

数据源​

未在 IDL 声明 dataSource;由宿主从 IMLib 拉取(getConversationList / getHistoryMessages / MESSAGES / CONVERSATION 事件)。

依赖边界

组件不直连网络与数据库:会话/消息由宿主从 IMLib 拉取后传入,组件只做排序、角标、格式化与渲染。

平台绑定​

项值
公开符号 / 签名im_kit_version
导出列表包含—
UI 框架view-model / 格式化 / 角标 / 状态计算层(不访问网络,不渲染 UI)

使用示例​

C(view-model 层)
/* Native 无 UI 门面:组合 10 个组件的 view-model / 格式化函数 */
const char* version = im_kit_version();

im_kit_conversation_model_t* list = im_kit_conversation_model_new(client);
im_kit_message_model_t* chat = im_kit_message_model_new(client, 1, "user2");
/* 使用完毕后释放 */
im_kit_message_model_free(chat);
im_kit_conversation_model_free(list);

相关文档​