如何在关闭和打开 chrome 扩展弹出窗口时不丢失数据

Amn*_*non 4 javascript jquery google-chrome popup google-chrome-extension

我是 chrome 扩展的新手。我需要在使用弹出窗口时创建数据,在关闭并重新打开它后可用。

以下是有关我的具体问题的更多详细信息:

每当我的 chrome 扩展弹出窗口打开时,就会运行脚本。在弹出窗口中,有一个选项可以单击一个按钮,该按钮会将一个项目添加到一个数组中,该数组用于在此弹出窗口中的另一个选项卡中显示此项目列表。但是,由于每次打开弹出窗口时,代码都会重新运行,因此在弹出窗口再次打开时,数组会被清空,显然,当浏览器或操作系统重新启动时。我需要这个数组在打开和关闭操作系统、浏览器和弹出窗口本身时保持一致。有任何想法吗?

顺便说一句 - 从后台页面管理它还不够好,因为操作系统重新启动后,后台页面会话就会停止并且数据会丢失

Xan*_*Xan 6

当弹出窗口关闭时,其 HTML 文档将被完全卸载;每次打开弹出窗口时,您都需要恢复状态。没有办法解决这个问题。

正如您所提到的,在浏览器运行时可以在后台页面中保留状态信息。但它仍然是临时存储;您需要使用持久存储来保存需要保存的任何状态。

最明显(也是推荐)的选择是chrome.storageAPI,专门为此目的而设计。如果您愿意,您还可以使用 Web API,例如localStorage或。IndexedDB