我正在测试BroadcastChannel功能,但遇到了麻烦。我打开两个 Chrome 窗口和每个窗口的开发工具。在控制台上我写:
const z = new BroadcastChannel('blarg')
z.onmessage = function (ev) {console.log(ev)}
我可以检查 z 并且它具有保存到 onmessage 道具的功能,所以一切看起来都很好。但是,当我测试时:
z.postMessage('sweet')
在其中一个控制台中,另一个控制台中没有任何显示。我希望由于两个 Chrome 窗口都订阅了广播频道blarg
并且具有控制台记录发布的消息的功能,我会看到消息sweet
显示在另一个控制台中,但没有任何反应。
所以两个问题:
我不能BroadcastChannel
像这样在 devtools 控制台中测试界面吗?
如果是这样,我对 BroadcastChannel 的工作方式有何遗漏?