繁体   English   中英

将 `jpm run` 用于 Firefox Add-on SDK 扩展时,如何将数据持久存储在 `localStorage` 中

[英]How to persistently store data in `localStorage` when using `jpm run` for a Firefox Add-on SDK extension

我正在开发 Firefox 扩展,我需要将日期存储在localStorage以用于登录属性。

我使用了简单存储,但简单存储在重启后会丢失数据。

所以,请让我知道如何在localStorage存储数据。

您可能正在使用jpm run来测试您的附加组件。 jpm run每次执行时都会使用一个新的临时配置文件。 如果您希望将任何数据从一次执行保存到另一次执行,您将需要使用-p--profile=选项指定用于该运行的配置文件。 请参阅在 MDN 上使用配置文件 您可以指定配置文件名称或配置文件的路径。 仅使用jpm run缺乏持久性对于放置在配置文件或配置文件目录中的任何存储都是一个问题,无论是使用simple-prefs的首选项、使用simple-storage 的数据、使用io/file 的文件、数据库使用SQLite 数据库或任何其他方法。 这在多个页面上都有明确说明,包括简单存储页面。

示例(来自 MDN):

jpm run --profile boogaloo
jpm run --profile path/to/boogaloo

如果要创建用于测试的新配置文件,可以使用配置文件管理器 您可以通过使用任何选项-p-P-ProfileManager启动 Firefox 来启动配置文件管理器。 通常,您需要退出任何当前正在运行的 Firefox 实例才能启动新版本的 Firefox。 但是,也可以使用-no-remote选项在使用不同的配置文件打开 Firefox 的同时启动一个新实例。 例如,在 64 位 Windows 上,要启动 Firefox 配置文件管理器,我通常使用:

"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -no-remote -ProfileManager

如果您真的想使用本地存储,您应该将数据存储在配置文件目录中,因此您仍然需要执行上述步骤才能使用指定的配置文件。 您将需要查看io/file ,并且需要open()文件,然后使用text-streamsbyte-streams读取或写入它。 下一个合乎逻辑的问题是它应该存储在哪里,但这是另一个问题:在哪里保存来自 Firefox 附加组件的文件?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM