如果我将消息从后台页面发送到devtools面板,但devtools面板未打开,我希望这些消息在打开时发送。我不确定如何实施这个。
答案 0 :(得分:1)
https://github.com/sindresorhus/devtools-detect是一个库,可以让您检测devtools是否打开。因此,如果您已确定devtools已关闭,请将您的消息推送到堆栈,然后在您检测到devtools已打开后记录这些消息。
var logStack = [];
function myLog(msg) {
if(!window.devtools.open) logStack.push(msg);
else console.log(msg);
}
window.addEventListener('devtoolschange', function (e) {
if(!e.detail.open) return;
while(logStack.length > 0) {
console.log(logStack.shift());
}
});