[英]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-streams或byte-streams讀取或寫入它。 下一個合乎邏輯的問題是它應該存儲在哪里,但這是另一個問題:在哪里保存來自 Firefox 附加組件的文件?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.