UI 事件推送
宿主页面通过事件推送主动要求 iframe 执行动作。它与 事件通知 的消息方向相反:
| 类型 | 方向 | 用途 |
|---|---|---|
| 事件通知 | iframe 页面通知接入方页面 | 接收路由、保存、下载、错误等结果 |
| 事件推送 | 接入方页面通知 iframe 页面 | 主动触发保存等 iframe 内动作 |
接收 iframe 内行为结果时使用 事件通知;由宿主页面主动触发 iframe 动作时使用事件推送。
当前只用于宿主触发保存
事件推送不是 iframe 初始化配置,也不是 onMessage 通知。它适合宿主页面在特定时机主动要求 iframe 执行动作。
当前事件推送主要覆盖 SAVE_PPT:只有处于编辑模式、当前在作品编辑页,并且推送的作品 ID 与编辑页作品 ID 一致时,才会触发保存。
SAVE_PPT 是宿主页面主动推送给 iframe 的动作;进入编辑器后的保存结果仍通过 事件通知 中的 PPT_SAVE 感知。需要区分服务端推送回调时,再处理 事件推送回调。
推送 SAVE_PPT 前检查
| 检查项 | 要求 |
|---|---|
| iframe 状态 | AipptIframe.show 已初始化成功 |
| 页面位置 | 当前处于作品编辑页 |
| 作品 ID | setMessage 传入的 id 与当前编辑作品 ID 一致 |
| 结果监听 | 已在 onMessage 中监听 PPT_SAVE 或事件推送回调 |
| 失败处理 | 业务侧能处理未处于编辑页、作品 ID 不一致或保存失败的情况 |
调用代码
ts
AipptIframe.setMessage({
type: 'SAVE_PPT',
res: {
id: '1' // 需要按照指定的推送格式进行调整
}
})推送结果回调
保存PPT
仅当处于【编辑模式】下,并处于作品编辑页,且推送的作品id和作品编辑页的id相同才可以触发
执行完成此推送后,可以通过事件通知 - 事件推送回调 - 保存PPT推送回调来获取保存操作完成的事件通知。
