【发布时间】:2021-09-06 15:27:48
【问题描述】:
我以前在这里看到过这个问题,但从来没有真正正确的答案。所以我在background.js 上注册了一个听众来收听chrome.storage.onChanged。但是,据我所知,尽管存储发生了变化,但它并没有触发事件。当用户单击按钮时,更改发生在 popup.js 文件中。
我已经设置了一个轮询按钮来从存储中获取最新数据并且那里显示更新,但是来自监听方法的 console.log 调用永远不会被调用。
正在更新存储中的相同项目,即没有添加或删除新项目。但是,我已经测试了添加不同的项目,但它仍然没有触发。
内部background.js
chrome.storage.onChanged.addListener(function() {
console.log("hehe");
});
内部popup.js
chrome.storage.sync.set({"databases": dbList}, function () {
console.log("Successfully added: " + domain);
document.getElementById("add-remove").innerText = remove;
setForRemove(dbList, domain)
});
提前致谢
【问题讨论】:
-
不,我已经启动并运行控制台,这就是我验证项目是否实际保存到存储中的方式
-
扩展的每个组件都有不同的控制台。您需要打开一个单独的,如链接主题所示。
标签: google-chrome-extension google-chrome-storage