酷大师插件自定义消息
酷大师插件的沙盒JS代码和UI html直接可互相发送自定义消息,以实现特定的交互功能。
这些消息即可由沙盒JS代码发送到UI html,也可由UI html发送到沙盒JS代码。
对于html代码发送、需在沙盒JS代码中响应的自定义消息,需调用KPluginUI.onMessage将沙盒代码中的自定义消息处理函数注册到酷大师。示例如下:
沙盒代码
function onUIMessage(data) {
if (data.type === 'create-rectangles') { // 自定义消息相应类型
...
}
}
app.getPluginUI().onMessage(onUIMessage); // 将沙盒代码中的自定义消息处理函数注册到酷大师html代码
parent.postMessage({ type: 'create-rectangles', count }, '*') // 向沙盒发送自定义消息
对于沙盒JS代码发送、需在html代码中响应的自定义消息,需在html代码中添加消息响应函数。示例如下:
沙盒代码app.getPluginUI().postMessage({type: 'initialize', curveData}); // 向html发送自定义消息
html代码
window.addEventListener('message', event => {
if (event.data.type === 'initialize') { // 自定义消息相应类型
...
}
}