gpt4 book ai didi

javascript - 点击 popup.js 时出现 Chrome 扩展 : Activate and execute background. js

转载 作者:行者123 更新时间:2023-12-01 01:44:52 25 4
gpt4 key购买 nike

据我了解 Manage Events with Background ScriptsMigrate to Event Driven Background Scriptsevents时应激活后台脚本触发。

背景.js

chrome.runtime.onMessage.addListener((message, sender, reply) => {

const json = message.data;
// some code

reply({ result: true })
return true;
});

popup.js

chrome.runtime.sendMessage({ data: [<ArrayWithData>] },
function (response) {
logger.log(response);
}
);

一切正常,但仅限于事件背景的情况。

为什么后台没有激活?有人可以解释我的错误是什么吗?或者如何在弹出的点击中激活并执行background.js

我知道,如果我更改 ma​​nifest.json 中的 persistence: true 或将其删除,一切都会正常工作。但我想保持persistence false并在需要时触发background.js。

最佳答案

您错过了this part in the documentation这解释了如何从 popup.js 激活后台脚本。检索后台页面对象后,您只需调用任何函数,甚至访问一个字段即可。

我总是把它放在我的 popup.js 的顶部:

// Initialize background page
chrome.runtime.getBackgroundPage(function(backgroundPage) {
console = backgroundPage.console;
})

这样我还可以从弹出窗口中查看控制台日志以及来自后台 View 的日志

关于javascript - 点击 popup.js 时出现 Chrome 扩展 : Activate and execute background. js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52047483/

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