我正在为使用 IndexedDB 保存本地数据的 Firefox 编写浏览器扩展。当浏览器关闭时,我想将最新数据写入我的 IndexedDB。但是,IndexedDB 是完全异步的,并且似乎 Firefox 在异步写入完成之前关闭。(当浏览器关闭时,我可以看到正在创建的数据库文件和日志文件被丢弃。)有没有办法在 Firefox 关闭时可靠地完成异步操作?
问问题
158 次
1 回答
0
您可以使用事件侦听器(您可能已经将其写入数据库)来侦听窗口关闭事件和preventDefault,直到您完成存储内容然后关闭回调窗口。
window.addEventListener("close", function(e) {
e.preventDefault();
//Save your things
//Call window.close on the callback
window.close();
}, false);
关于 stackoverflow还有一个不同的问题,它可能有更好的方法来收听应用程序关闭而不是窗口关闭。但过程将是相似的。
于 2013-07-27T22:45:41.003 回答