4

BroadcastChannel除了将事件侦听器附加到它之外,有没有办法使用 Chrome DevTools 来查看发生了message什么,这样我就可以看到谁在postMessage做什么?

4

1 回答 1

1

我找到的最好的解决方案是扩展这样的原型postMessage

(function(postMessage) {
  BroadcastChannel.prototype.postMessage = function (message) {
    debugger;

    postMessage.call(this, message);
  };
}(BroadcastChannel.prototype.postMessage));

显然,您可以将debugger语句替换为其他内容console.trace(message),例如,而不是直接在控制台中打印调用堆栈。

我希望这对你有帮助。

于 2020-05-12T09:53:54.240 回答