一些场景下需要同步浏览器不同标签(tab)的数据(小需求),比如需要知道当前是哪个 tab 打开了 websocket。像京东的聊天页面,如果打开多个相同页面,其他页面会显示“当前聊天已在其他窗口打开”。
浏览器提供了 BroadcastChannel API,不过兼容性不是很好:
可以尝试使用这个库做兼容处理:broadcast-channel
A BroadcastChannel that works in old browsers, new browsers, WebWorkers and NodeJs.