参考文章:
- https://developer.mozilla.org/zh-CN/docs/Web/API/Window/postMessage
- postMessage
// 父组件
// - 给子组件发消息 postMessage,注意要在页面渲染后 再发,不然 iframe 还没加载
window.onload = () => {
IframeDom.contentWindow.postMessage("主页面消息",
"http://b.com/iframepage.html")
}
// - 父组件监听,子组件发来的消息,监听 'message'
window.addEventListener('message',function(event){
console.log(event.origin, event.data);
}, false);
// 子组件
// - 接收
window.addEventListener('message',function(event){
if(window.parent !== event.source){return}
console.log(event.origin, event.data);
// 回复 发送
window.parent.postMessage("子页面消息收到", 'http://a.com/main.html')
}, false);