页面与实例交互
说明页面上下文、状态交付、实例操作和配置更新。
Documentation content is currently available in Simplified Chinese.
飞块加载超级块页面时,会建立页面与宿主之间的桥接。页面 SDK 负责监听消息和关联请求,插件页面通过公开方法使用它。
#主页面
宿主交付的快照包含状态、公开配置和显示模式。onState() 收到这些数据后,页面就可以更新文字、颜色或其他界面元素。监听器注册较晚时,SDK 会回放最近收到的快照。
桌面预览使用 preview 模式,设备中的已放置页面使用 live 模式。数据请求和实例操作由实时实例提交;预览页面主要用于展示外观。
#实例操作
页面调用 invokeAction(actionId, args) 后,宿主核对这个操作是否在超级块的 instanceActions 中声明,并检查参数。通过后,把真实的设备、屏幕和块 ID 传给后台。
后台修改业务数据后,可以发布该实例的状态。宿主把新快照送回页面,从而完成“点击 → 后台处理 → 界面更新”的过程。invokeAction() 自身没有结果 Promise。
#配置页面
配置页收到当前公开配置,通过 update(changes) 提交修改。宿主校验字段后更新编辑草稿,并回传新的配置。用户保存块后,配置才应用到已放置实例。
密码字段或 visibility: "private" 的值留在后台,主页面和配置页面均不收到这些值。完整方法说明见 FlyonDeckWidget 和 FlyonDeckWidgetConfig。