Google chrome extension 使用Chrome中的本地存储作为数据库?
我通过本地存储成功设置/获取数据。本质上,我正在构建一个提醒扩展/地理位置,允许用户保存url、他们的地理位置和url的标题。每次需要保存3条数据。我使用JSON.stringfy和JSON.parse来实现这一点。这就是我被困的地方:Google chrome extension 使用Chrome中的本地存储作为数据库?,google-chrome-extension,local-storage,Google Chrome Extension,Local Storage,我通过本地存储成功设置/获取数据。本质上,我正在构建一个提醒扩展/地理位置,允许用户保存url、他们的地理位置和url的标题。每次需要保存3条数据。我使用JSON.stringfy和JSON.parse来实现这一点。这就是我被困的地方: 如何保存用户的每个条目而不在本地存储中写入最后一个条目?每次我保存url时,它不会将其作为新条目保存在本地存储中。它只是在最后一个条目中不断保存 随着时间的推移,用户可能会有几十个条目,但我希望能够更新数据集中的特定条目。(例如,如果[数据集中存储的url之一]
//save my data
var mydata = { urlTitle: myTitle, myurl: currentUrl, urlLoc: geoUrl };
localStorage.setItem("mydata", JSON.stringify(mydata));
//get my data
var returnData = localStorage.getItem("mydata");
mydata = JSON.parse(returnData);
只需要一点指导。就是这样做的
// Setup database
var lib = new localStorageDB("library", localStorage);
lib.createTable("books", ["code", "title", "author", "year", "copies"]);
// Insert rows
lib.insert("books", {code: "B001", title: "Phantoms in the brain", author: "Ramachandran", year: 1999, copies: 10});
lib.commit();
// Query rows
lib.query("books", {author: "ramachandran"});
披露:我编写了库无需感谢——这就是接受和向上投票的目的。@Nadh,我注意到的一件事是,我只能按域查看我存储在localstorage中的文件。因此,如果我在域hello.com下存储了一组URL,我只能在我处于活动状态时检索数据。如果tab位于不同的域中(例如再见,adios.com)我无法检索存储在hello.com下的数据。无论活动选项卡中的域是什么,我如何检索所有数据?@oxtail,这是设计上不可能的!就像cookies一样,localStorage是基于每个域的。否则,任何站点都可以访问任何其他站点的数据。@nadh感谢您提供的信息。我认为,因为保存的来源是来自同一个源(我的扩展名),我将能够检索从同一个源保存的数据列表。