父页面

       接收传来的页面即子页面

在vue页面中

created () {

window.addEventListener("message", this.receiveMessageFromIframePage, false);

},

receiveMessageFromIframePage(event){

if (event.data && event.data.data && event.data.data.type) {

// do somthing, you want to do

}

}

子页面

postMessage(message,targetOrigin,[transfer]);

注释:

message:将要发送到其他window的数据。

targetOrigin:指定那些窗口能接收到消息事件,其值可以是字符串 “*” 表示无限制,或者是一个URI。

transfer:是一串和message同时传递的Transferable对象,这些对象的所有权将被转移给消息的接收方,而发送方将不再保留所有权。

postMessage方法被调用时,会在所有页面脚本执行完毕之后像目标窗口派发一个 MessageEvent 消息,该MessageEvent消息有四个属性需要注意:

type:表示该message的类型

data:为 postMessage 的第一个参数

origin:表示调用postMessage方法窗口的源

source:记录调用postMessage方法的窗口对象

Logo

前往低代码交流专区

更多推荐