BroadcastChannel是一个Web API,用于在浏览器的不同窗口、标签页或者甚至不同的浏览器实例之间建立通信。它允许在同一个origin(来源)下的不同上下文之间发送数据,例如在同一个域名下的不同页面之间进行通信。
创建频道
const channel = new BroadcastChannel('频道名称')
发送信息
channel.postMessage('信息内容')
接收信息
channel.onmessage = event => {
console.log('接收信息: ', event.data)
}
关闭频道
channel.close()
具体使用方式
A组件或页面:
const channel = new BroadcastChannel('一样的频道名称')
channel.onmessage = event => {
// 触发
}
B组件或页面:
const channel = new BroadcastChannel('一样的频道名称')
channel.postMessage('发送消息)