我正在开发一个Chrome扩展程序,需要保存一些信息(主要是标签信息),这些信息将在扩展程序的整个生命周期中存在(例如,因为用户开始使用它直到他关闭浏览器).
一种选择是使用localstorage,但localstorage只能保存字符串,这使我感到非常不舒服(因为我有一堆数据要保存 – 日期,URL,整数等).我正在寻找的是使用我自己的javascript对象,这些对象将在整个扩展期间生效.
现在的问题是,每次用户点击浏览器操作时,在某些javascript文件的脚本中定义这些对象都会将其删除.换句话说,我有一个名为popup.html的浏览器操作,其中包含一个javascript文件(我想在其中保存我的对象),我在JS文件中定义的所有对象都会丢失,我希望一切都能坚持下去.
我有什么选项可以保持数据在浏览器操作中不断点击并且不是localstorage?
解决方法
你真的应该使用localStorage(你可以使用
JSON.stringify和
JSON.parse).
如果您确实不想使用localStorage或服务器端存储,请使用IndexedDb:https://developer.mozilla.org/en/IndexedDB/Using_IndexedDB