浏览器打开多标签页时,通过BroadcastChannel广播频道方法通信

需求:因为项目没有使用单页面路由跳转,新增编辑均是打开新标签页,当打开了多个标签页的时候,其中某一个标签页关闭时,想通知主页面刷新接口,获取最新的分页列表数据.

实现代码:

1.新增,编辑页面:

// 创建一个名为 "my_channel" 的广播频道
const myChannel = new BroadcastChannel("my_channel");
// 向该频道发送消息
myChannel.postMessage("refreshList");

// 关闭当前页
window.close();  

2.主页面

let _this = this;  
// 监听名为 "my_channel" 的广播频道
const myChannel = new BroadcastChannel("my_channel");
// 监听该频道并处理消息
myChannel.onmessage = function (event) {
if (event.data === "refreshList") {
_this.getList();   //刷新列表方法
}
};

以上内容均借鉴BroadcastChannel() - Web API | MDN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值