我尝试了很多方法,但在关闭弹出窗口之前/之前没有触发事件监听器。 您可能会在SO上找到相关问题,但对我来说没有任何用处 这是我试过的:
chrome.runtime.onSuspend.addListener(function hello() {
chrome.storage.sync.set({
'somedata': 'mydata1' // didn't work
}, function() {});
});
addEventListener("unload", function(event) {
chrome.storage.sync.set({
'somedata': 'mydata2' // didn't work
}, function() {});
}, true);
我只想在用户关闭弹出窗口时保存一些数据。就是这样。
答案 0 :(得分:0)
它有问题所以你必须做一些变通办法。
您必须从后台页面保存数据,因此您需要从弹出窗口将数据传递给它。
使用chrome.runtime.connect
连接两者。建立了一个端口:每当您要从弹出窗口保存的数据发生变化时,您都可以Port.postMessage()
到您的背景页。
当弹出窗口关闭时,Port.onDisconnect
将会触发,您的数据就可以同步了。