gpt4 book ai didi

javascript - 如何检查 ydn.db 数据库是否可供使用?

转载 作者:行者123 更新时间:2023-11-28 00:46:14 24 4
gpt4 key购买 nike

我可以成功创建一个indexeddb数据库并将数据加载到其中。我还可以从同一页面读取该数据库中的数据。然后,我尝试从网站上的另一个页面读取数据库。

db = new ydn.db.Storage('test');
db.keys('items').done(function(d) {
alert(d);
});

这不起作用。我只是得到一个空结果。但是,如果我直接将上面的代码输入 Chrome 的 javascript 控制台,它就可以工作。环顾四周后发现数据库可能还没有准备好。所以我尝试这个。

db = new ydn.db.Storage('test');
db.addEventListener('ready', function() {
db.keys('items').done(function(d) {
alert(d);
});
});

然而,这在控制台中出现以下错误。

Uncaught TypeError: undefined is not a function

以下代码行显示错误。

db.addEventListener('ready', function() {

我不确定我在这里缺少什么。

最佳答案

打开数据库连接是一个异步操作。当数据库连接时以及进行必要的架构更改之后,将调用此ready事件监听器。这是数据库实例进行的第一次异步函数调用

如果数据库打开失败,则使用 error 事件对象调用回调。可以添加多个监听器。繁重的数据库写入操作应在此就绪事件处理程序之后调用。或者,可以通过 DOM 事件监听器模式监听 ready 事件。

您可以以类似的方式添加数据库就绪事件监听器:

var db = new ydn.db.Storage('test');
db.onReady(function(e) {
if (e) {
if (e.target.error) {
console.log('Error due to: ' + e.target.error.name + ' ' + e.target.error.message);
}
throw e;
}
db.put('statement1', large_data);
});

关于javascript - 如何检查 ydn.db 数据库是否可供使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27353557/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com