gpt4 book ai didi

javascript - chrome.extension.getBackgroundPage() 一段时间后返回 null

转载 作者:搜寻专家 更新时间:2023-11-01 05:01:33 26 4
gpt4 key购买 nike

当我的 chrome 扩展程序在 chrome 启动时加载时,一切似乎都正常并且 chrome.extension.getBackgroundPage() 返回正确的值(从 popup.js 中获取)。但是过了一段时间(2-3 分钟),尤其是浏览器放任自流的情况下,该函数返回 null。只有关闭并重新打开 chrome 才能解决问题。我试图通过以下方式操纵它:

if (chrome.extension.getBackgroundPage() == null) window.location.reload(true);

按照 Why does chrome.extension.getBackgroundPage() return null? 的建议,这有时会有所帮助,但大多数时候它只是不断刷新应用程序,因此必须关闭 chrome。有人知道哪里出了问题吗?

最佳答案

根据引用页面 (Difference between Event and Background Page),有一个更好的选项可以在仍然使用事件页面的同时获取背景:

If your extension uses, extension.getBackgroundPage, switch to runtime.getBackgroundPage instead. The newer method is asynchronous so that it can start the event page if necessary before returning it.

这对我来说效果很好,只需在异步回调中完成你的工作,它接收后台页面作为函数参数。

这是方法的规范 runtime.getBackgroundPage

关于javascript - chrome.extension.getBackgroundPage() 一段时间后返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14921500/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com