localStorageDB未在javascript文件之间持久化数据
我有2个javascript文件。 其中1个文件函数如下所示localStorageDB未在javascript文件之间持久化数据,javascript,local-storage,Javascript,Local Storage,我有2个javascript文件。 其中1个文件函数如下所示 var database = new localStorageDB("FormsDatabase", localStorage); this.Create = function (item) { database.insertOrUpdate("Value", { Id: item.Id }, item); database.commit();
var database = new localStorageDB("FormsDatabase", localStorage);
this.Create = function (item) {
database.insertOrUpdate("Value", { Id: item.Id }, item);
database.commit();
};
var database = new localStorageDB("FormsDatabase", localStorage);
this.SynchronizeValue = function () {
var items = database.queryAll("Value", { query: function (row) {
if (row.IsSent == false && row.IsDeleted == false)
{ return true; } else { return false; } }, limit: 100 });
};
另一个看起来像这样
var database = new localStorageDB("FormsDatabase", localStorage);
this.Create = function (item) {
database.insertOrUpdate("Value", { Id: item.Id }, item);
database.commit();
};
var database = new localStorageDB("FormsDatabase", localStorage);
this.SynchronizeValue = function () {
var items = database.queryAll("Value", { query: function (row) {
if (row.IsSent == false && row.IsDeleted == false)
{ return true; } else { return false; } }, limit: 100 });
};
为什么第一个文件在执行insertOrUpdate和commit之后可以立即执行查询,并且可以得到返回,但第二个文件中的“值”表内容已消失?这些文件在同一个域中吗?是的。奇怪的是,我想这和数据库连接的更新有关。可能在新数据库对象更新之前,提交还没有完全发生?我以为您使用的是
localStorage
,但您一定使用的是一个我不熟悉的库。它是本地存储上的一个称为locaStorageDB的薄数据库层。我发现更新一个数据库变量会产生问题,所以只有一个数据库对象似乎可以缓解我在这里遇到的问题。这些文件是在同一个域上吗?是的。奇怪的是,我想这和数据库连接的更新有关。可能在新数据库对象更新之前,提交还没有完全发生?我以为您使用的是localStorage
,但您一定使用的是一个我不熟悉的库。它是本地存储上的一个称为locaStorageDB的薄数据库层。我发现更新一个数据库变量会产生问题,所以只有一个数据库对象似乎可以缓解我在这里遇到的问题。