两个浏览器页面数据通信,页面是非父子、非兄弟关系。
详细使用方式可借鉴:跨浏览器tab页的通信解决方案尝试
案例:关闭一个新开的浏览器页面B,进行刷新另一个页面A的数据。即关闭页面A通知页面B进行数据刷新。
//关闭页面
close() {
console.log("关闭窗口");
//关闭该浏览器页面
window.open("", "_self").close();
//发送数据
window.opener.postMessage("hello,give me your money", "*");
},
created() {
this.getList();
//监听页面B发送的消息
let that = this;
window.addEventListener("message", function (e) {
console.log("新增的浏览器页面传过来的数据",e)
//请求刷新数据列表
that.getList();
});
},
可以window.opener.postMessage发送的数据,在页面A进行逻辑处理。